例如:'SL' 去掉后变成SL
String regexp = "\'"String str = "'SL'"System.out.println("替换前:" + str)str = str.replaceAll(regexp, "")System.out.println("替换后:" + str)我开始时犯了个很弱智的错误,以至于现在搞了近二十分钟才出来。就是把上面的str = str.replaceAll(regexp, "")换成str.replaceAll(regexp, "")然后再打印,发现结果始终是 ’SL',后来恍然大悟,String类被final修饰,是不可变的。所以对String对象施加任何操作都不会改变它的内容。而 str.replaceAll(regexp, "")相当于创建了一个新的字符串对象,即去掉了单引号的源字符串。 再修改字符串引用 str 指向新的字符串。则现在打印的就是去掉单引号后的字符串了。
如何用在正则去掉字符串中的\这个字符
var str = '\\sdsf\\dfsd' str = \sdsf\dfsd 因为\是转义字符,它本身要用两个它本身才能表示str.replace(/\\/g, '')
如何使用printf打印"c:\nomoon\"这个字符串
#include"stdio.h"
main()
{
printf("c:\\nomoon\\")
}
如何使用正则表达式匹配多个字符串
String regEx = "<a>([\s\S]*?)</a>"
String s = "<a>123</a><a>456</a><a>789</a>"
Pattern pat = Pattern.pile(regEx)
Matcher mat = pat.matcher(s)
boolean rs = mat.find()
for(int i=1i<=mat.groupCount()i++){
System.out.println(mat.group(i))
}
awk如何使用regex排除某个字符串
使用 !/正则/{ }
或 $0 !~ /正则/{ }
表示不匹配正则时,执行后面的内容
正则中排除字符的写法 是 [^字符]
如果是多个字符,排除字串,需要使用 环视
如何使用python去掉指定的字符串
如果字符串是固定为{string}这种格式的可以:
s = '{ac468128a24a11e6ae35989096c6c478}'
print(s[1:-2])
如果不是固定的格式:
s = '{ac468128a24a11e6ae35989096c6c478}'
print(s.split('{')[1].split('}')[0])
知识延展:
如果字符串是固定为{string}这种格式的可以:
s = '{ac468128a24a11e6ae35989096c6c478}'
print(s[1:-2])
如果不是固定的格式:
s = '{ac468128a24a11e6ae35989096c6c478}'
print(s.split('{')[1].split('}')[0])
正则表达式 这个字符串如何表示?
^[a-zA-Z].{3}\.
^ 开头
[a-zA-Z] 一位大小写字母
.{3} 三位任意字符
\. 字符'.'
单引号引的数据 是char类型的-->单引号只能引一个字符(表示单个字符)双引号引的数据 是String类型的-->而双引号可以引0个及其以上(引用字符串)
char类型的值用单引号引起来的单个字符
如: char a = 'b'
而java中的双引号 表示字符串 一个或多个字符
如 String c = "abc"
String d="a"
和char d=‘a’
可以按照以下java例子进行操作。
1、java编码举例:
String regexp = "\'"
String str = "'SL'"
System.out.println("替换前:" + str)
str = str.replaceAll(regexp, "")
System.out.println("替换后:" + str)
2、原因分析:String类被final修饰,是不可变的。所以对String对象施加任何操作都不会改变它的内容。而 str.replaceAll(regexp, "")相当于创建了一个新的字符串对象,即去掉了单引号的源字符串。 再修改字符串引用 str 指向新的字符串。则现在打印的就是去掉单引号后的字符串了。