繁体   English   中英

在字符串中搜索子字符串

[英]Search for substring inside string

我一直在文本字段中键入一个字符串, "KD-G435MUN2D"

我已经使用此代码从该字符串中搜索"UD"子字符串:

<script>
     var str="KD-R435MUN2D";
     var patt1=/UD/gi;
     document.write(str.match(patt1));
</script>

但是这段代码不起作用。 我的错在哪里?


var str = $(this).val; 
var hasUD; 
var hasJD; 
var patt1 = str.match(/u/gi); 
var patt2 = str.match(/J/gi);
var patt3 = str.match(/D/gi); 

if (patt1 && patt3) { 
        hasUD = 'UD'; 
}elseif (patt2 && patt3) { 
        hasJD = 'JD'; } 

我试过这个似乎工作:

<script type="text/javascript">

var str="KD-R435MUN2D";
var patt1=/U.*D/g;
document.write(str.match(patt1));

</script>

试试这个,如果它同时有U和D,它将返回'UD'。否则它将是假的。

var str = "KD-R435MUN2D";
var hasUD;
var patt1 = str.match(/U/gi);
var patt2 = str.match(/D/gi);

if (patt1 && patt2) {
    hasUD = 'UD';
} else {
    hasUD = false;
}

document.write(hasUD);

这只会将U和D匹配在一起。 尝试:

var str="KD-R435MUN2D";
var patt1=/[U|D]/gi;
alert(str.match(patt1));

这将返回'U,D,U'

我没有在测试字符串中连续看到字符UD,并且正则表达式仅指定子字符串UD。 如果你正在寻找U[anything]D ,你需要使用/U.*D/gi - .*表示“零或更多重复任何有效字符”(不包括换行符)。 这将找到UD,如果它在那里,或在你的情况下,UN2D。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM