[英]Display a specific character followed by a digit from a string using javascript
var string = "Administration for administering str1234 as an administrator";
我只想从string
变量中获取"str1234"
。 我该怎么做呢?
请注意,子字符串"str1234"
的索引并不总是一致的。
您可以使用正则表达式搜索字符串中的模式。
要搜索后跟1-4个数字的模式str
,请使用以下表达式:
\\bstr\\d{1,4}\\b
regex101.com
对RegExp的regex101.com
\\b
在单词边界处声明位置(^\\w|\\w$|\\W\\w|\\w\\W)
str
从字面上匹配字符str
(区分大小写)。
\\d{1,4}
匹配一个数字(等于[0-9]
)。
{1,4}
量词-匹配1到4次,尽可能多地匹配,并根据需要返回(贪婪)。
\\b
在单词边界处声明位置(^\\w|\\w$|\\W\\w|\\w\\W)
在JavaScript中:
let input = 'Administration for administering str1234 as an administrator';
let match = input.match(/\bstr\d{1,4}\b/);
对象match
可以这样使用:
match[0] // "str1234"
match.index // 33
match.input // "Administration for administering str1234 as an administrator"
使用indexof()
var string = "Administration for administering str1234 as an administrator"; var index; index= string.indexOf('str1234') console.log(index)
要将“ str1234”更改为其他值,可以使用replace()。
希望这可以帮助 :)
您可以如下使用正则表达式:
var string = "Administration for administering str1234 as an administrator"; var x = string.match(/str[\\d]+/) console.log(x)
var string = "Administration for administering str1234 as an administrator"; var array = string.split(" "); cont neededString; for (const s of array) { if(s.startsWith('str')){ neededString = s; break; } //or if(isAlphaNumeric(s)) { neededString = s; break; } } public boolean isAlphaNumeric(String s){ String pattern= "^[a-zA-Z0-9]*$"; return s.matches(pattern); }
您可以使用substr函数
var text = "Administration for administering str1234 as an administrator"; var textSearch = "str1234"; console.log(text.substr(text.indexOf(textSearch),textSearch.length));
您还可以通过以下代码段使用indexOf()
函数来完成此操作:
var string = "Administration for administering str1234 as an administrator"; var subString = "str1234"; if (string.indexOf(subString) >= 0) { alert(true); //You can add your functionality here. }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.