麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

JavaScript中兩個字符串的匹配

2019-11-20 09:45:33
字體:
來源:轉載
供稿:網友

工作中遇到一個問題,兩個字符串匹配,要求:每個字符串中最多含有一個*,?可以無限多個

*代表一個任意長度的字符串,而?則代表一個字符

要求可以提示出兩個沖突

復制代碼 代碼如下:
<input type="text" id="str1"><br>
<input type="text" id="str2"><br>
<input type="button" onclick="checkMarchX()" value="CHECK">

用JavaScript實現代碼如下:

function checkMarchX(){	var str1 = document.getElementById('str1').value;	var str2 = document.getElementById('str2').value;	var str1XPosition = str1.indexOf('*');	var str2XPosition = str2.indexOf('*');	if(str1XPosition!=-1 && str2XPosition!=-1)//兩者都含有*	{		var position = str1XPosition>str2XPosition?str2XPosition:str1XPosition;//success		if(position!=0)		{			var patbeforeStr1 = str1.substring(0,position);			var patbeforeStr2 = str2.substring(0,position);			if(checkMarchQ(patbeforeStr1,patbeforeStr2))			{				//alert(str1+'與'+str2+"前半部分沖突");				//然后對應后半部分進行測試				var str1XBackPosition = str1.length-str1XPosition-1;				var str2XBackPosition = str2.length-str2XPosition-1;				var backposition = str1XBackPosition>str2XBackPosition?str2XBackPosition:str1XBackPosition;				if (backposition==0)				{					alert(str1+'與'+str2+"沖突");				}				else				{					var patbackStr1 = str1.substring(str1.length-backposition,str1.length);					var patbackStr2 = str2.substring(str2.length-backposition,str2.length);					if(checkMarchQ(patbackStr1,patbackStr2))					{						alert(str1+'與'+str2+"沖突");					}				}			}		}		else		{			//alert(str1+'與'+str2+"前半部分沖突");			var str1XBackPosition = str1.length-str1XPosition-1;			var str2XBackPosition = str2.length-str2XPosition-1;			var backposition = str1XBackPosition>str2XBackPosition?str2XBackPosition:str1XBackPosition;			if (backposition==0)			{				alert(str1+'與'+str2+"沖突");			}			else			{				var patbackStr1 = str1.substring(str1.length-backposition,str1.length);				var patbackStr2 = str2.substring(str2.length-backposition,str2.length);				if(checkMarchQ(patbackStr1,patbackStr2))				{					alert(str1+'與'+str2+"沖突");				}			}		}	}	else if((str1XPosition==-1 && str2XPosition!=-1)||(str1XPosition!=-1 && str2XPosition==-1))//有且只有一個字符串含有*	{		var strX = str1XPosition==-1?str2:str1;//含有*的字符串		var strNoX = str1XPosition==-1?str1:str2;//不含*的字符串		if (strX.length-1<strNoX.length)		{			var position = strX.indexOf('*');			if(position==0)			{				//alert(str1+'與'+str2+"前半部分沖突");				var backposition = strX.length-position-1;				if (backposition==0)				{					alert(str1+'與'+str2+"沖突");				}				else				{					var patbackStr1 = str1.substring(str1.length-backposition,str1.length);					var patbackStr2 = str2.substring(str2.length-backposition,str2.length);					if(checkMarchQ(patbackStr1,patbackStr2))					{						alert(str1+'與'+str2+"沖突");					}				}			}			else			{				var patbeforeStr1 = str1.substring(0,position);				var patbeforeStr2 = str2.substring(0,position);				if(checkMarchQ(patbeforeStr1,patbeforeStr2))				{					//alert(str1+'與'+str2+"前半部分沖突");					var backposition = strX.length-position-1;					if (backposition==0)					{						alert(str1+'與'+str2+"沖突");					}					else					{						var patbackStr1 = str1.substring(str1.length-backposition,str1.length);						var patbackStr2 = str2.substring(str2.length-backposition,str2.length);						if(checkMarchQ(patbackStr1,patbackStr2))						{							alert(str1+'與'+str2+"沖突");						}					}				}			}		}	}	else	{		if(checkMarchQ(str1,str2))		{			alert(str1+'與'+str2+"沖突");		}	}}function checkMarchQ(str1,str2){	var flagque = false;	if(str1.length==str2.length)	{	  //長度相同才有可能沖突		for (var i=0 ;i<str1.length ;i++ )		{			if(str1.substr(i,1)!='?' && str2.substr(i,1)!='?')			{				if(str1.substr(i,1)!=str2.substr(i,1))				{					flagque = false;//表示不沖突					break;				}				else				{					flagque = true;//表示沖突				}			}		}	}	return flagque;}

其中*最起碼為一個字符,以上程序并沒有對輸入的合法性進行驗證

查看更多JavaScript的語法,大家可以關注:《JavaScript 參考教程》、《JavaScript代碼風格指南》,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 九九热在线观看视频 | 久久精品免费网站 | 97久久日一线二线三线 | 欧美人与zoxxxx另类9 | 久久96国产精品久久秘臀 | 国产精品久久国产精麻豆96堂 | 亚洲视频在线网 | 91九色丨porny丨国产jk | 国产成人综合在线视频 | 看毛片电影 | av在线看网站 | 91福利社在线 | 一级毛片在线免费观看 | 国产精品高潮视频 | 神马福利电影 | 成人免费在线观看视频 | 亚洲精品成人久久久 | av电影在线网站 | 黄色片网站免费 | 成人男女啪啪免费观看网站四虎 | 中文字幕免费播放 | 国内xxxx乱子另类 | 91精品国产综合久久久欧美 | 精品国产成人 | 精品国产一区二区三 | 极色品影院 | 91系列在线观看 | 毛片在线看免费 | 亚洲精品v天堂中文字幕 | 国产区二区| 国产乱淫a∨片免费视频 | 国产精品99久久久久久久vr | 红桃一区 | 99综合视频 | 天天操天天碰 | 黄色大片在线免费看 | 久久久久久久久日本理论电影 | 免费黄色欧美视频 | 久久成年人视频 | 轻点插视频 | 久久久久亚洲美女啪啪 |