<分区>
我需要使用正则表达式来检查字符串是否以双引号字符 ("
) 开头并以双引号结尾性格也是。
问题是我不能使用双引号 字符,因为它会造成混淆。有没有其他方法可以在正则表达式或一般字符串中表示双引号字符"
?
String s = """; // ?
<分区>
我需要使用正则表达式来检查字符串是否以双引号字符 ("
) 开头并以双引号结尾性格也是。
问题是我不能使用双引号 字符,因为它会造成混淆。有没有其他方法可以在正则表达式或一般字符串中表示双引号字符"
?
String s = """; // ?
最佳答案
首先,双引号字符在正则表达式中没有什么特别之处——它只是另一个字符,所以它不需要转义从正则表达式的角度。
但是,由于 Java 使用双引号来分隔 字符串常量,如果您想在 Java 中创建一个带有双引号的字符串,则必须对它们进行转义。
此代码将测试您的字符串是否匹配:
if (str.matches("\".*\"")) {
// this string starts and end with a double quote
}
请注意,您不需要添加输入标记的开始 和结束(^
和$
) 在正则表达式中,因为 matches()
要求匹配整个输入以返回 true - ^
和 $
是隐含的。
关于java - 如何在正则表达式中表示双引号字符 (")?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16761596/