Um problema encontrado no trabalho, duas cordas correspondem, requisitos: cada string contém no máximo um *, e pode haver infinitamente múltiplo
* representa uma sequência de algum comprimento, enquanto? representa um personagem
O requisito pode solicitar dois conflitos
Copie o código da seguinte forma: <input type = "text" id = "str1"> <br>
<input type = "text" id = "str2"> <br>
<input type = "button" onclick = "checkMarchx ()" value = "check">
O código a ser implementado usando JavaScript é o seguinte:
função checkMarchx () {var str1 = document.getElementById ('str1'). value; var str2 = document.getElementById ('str2'). value; var str1xposition = str1.indexOf ('*'); = str1xposition> str2xposition? str2xposition: str1xposition; // succcessif (posição! '+str2+"conflict");//Then test the corresponding second half var str1XBackPosition = str1.length-str1XPosition-1;var str2XBackPosition = str2.length-str2XPosition-1;var backposition = str1XBackPosition>str2XBackPosition?str2XBackPosition:str1XBackPosition;if (backposition==0){alert(str1+' and '+str2+"conflito");} else {var patbackstr1 = str1.substring (str1.length-backPosition, str1.length); var patbackstr2 = str2.Substring (str2.Length-backPosition, str2.Length); if (checkMarchQ (Patbackstr1, patbackstr2) {allem); '+str2+"conflito");}}}} else {// alert (str1+' e '+str2+"conflito"); var str1xbackPosition = str1.Length-str1xPosition-1; var str2xbackPosition = str2.Length-str2XPosition-1; VarPlack; (BackPosition == 0) {alert (str1+'conflita com'+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+'conflita com'+str2+"conflitos");}}}} se if (str1xposition ==-1 && str2xPosition! str2xposition ==-1)) // Há apenas uma sequência contendo * {var strx = str1xposition ==-1? strx.indexOf ('*'); if (position == 0) {// alert (str1+'e'+str2+"conflito na primeira metade"); var backPosition = strx.Length-position-1; if (backPosition == 0) {alert (str1+'conflitos com'+str2+");} {var patback str1.substring (str1.length-backPosition, str1.length); var patbackstr2 = str2.Substring (str2.Length-backPosition, str2.Length); if (checkMarchq (patbackstr1, patbackstr2)) {alert (str1+'} »+str2+" conflitos "; str1.substring (0, posição); var patbeforest2 = str2.Substring (0, posição); if (checkMarchq (patbeforest1, patbeforest2)) {// alerta (str1+'e'+str2+"conflito a primeira metade"); var backPosition = strx.lEst-Poition-1 se; '+str2+"conflito");} else {var patbackstr1 = str1.substring (str1.length-backPosition, str1.length); var patbackstr2 = str2.Substring (str2.Length-backPosition, str2.Length); if (checkMarchQ (Patbackstr1, patbackstr2) {allem); '+str2+"conflito");}}}}}}} else {if (checkMarchq (str1, str2)) {alert (str1+' e '+str2+"conflito");}}}}}} função checkq (str2) {var flag =} se (se é (str2); 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; // meios não; Retornar Flagque;}* é pelo menos um caractere e o programa acima não verifica a legalidade da entrada.
Para visualizar mais sintaxe JavaScript, você pode seguir: "Javascript Reference Tutorial" e "Javascript Code Style Guide". Eu também espero que todos apoiem mais wulin.com.