Js方法
判断是否存在某字符串
String对象方法:
方法1:
var str = "123";
console.log(str.indexOf("3") != -1 ); // trues
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。如果要检索的字符串值没有出现,则该方法返回 -1。
方法2:
js
var str = "123";
console.log(str.search("3") != -1 ); // true
search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。如果没有找到任何匹配的子串,则返回 -1。
方法3:
var str = "123";
var reg = RegExp(/3/);
if(str.match(reg)){
// 包含
}
match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。
替换字符串:
var str = 123434
str = str.replace(/3/g,"0")
console.log(str) //120404
str = str.replace(/3/,"0")
console.log(str) //120434
加 g ,为全局替换。
参考replace:https://www.w3school.com.cn/jsref/jsref_replace.asp
Java方法
// 正则表达式
String string = "123<aa>45<bb>67";
String regex = "<(.*?)>"; // <.....> 得到的结果是<>中的字段
List<String> list = new ArrayList<String>();
Pattern pattern = Pattern.compile(regex);
Matcher m = pattern.matcher(string);
// 得到所有匹配正则表达式的字段
while (m.find()) {
int i = 1;
list.add(m.group(i));
i++;
}
for (String str : list) {
String pstr = "cc";
Pattern p = Pattern.compile("<"+str+">");
Matcher matcher = p.matcher(string);
string = matcher.replaceAll(pstr);
}
System.out.println(string); //123cc45cc67