如何在正则表达式中表示双引号字符(")?

How to represent the double quotes character (quot;) in regex?(如何在正则表达式中表示双引号字符(quot;)?)
本文介绍了如何在正则表达式中表示双引号字符(")?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我需要使用正则表达式来检查字符串是否以 双引号 字符 (") 开头并以 双引号 结尾角色也是.

I need to use regex, to check if a string starts with a double quotes character (") and ends with a double quotes character too.

问题是我不能使用 双引号 字符,因为它会混淆.有没有其他方法可以在正则表达式或一般字符串中表示 双引号 字符 "?

The problem is I can't use a double quotes character, cause it gets confused. Is there any other way to represent a double quotes character " in regex, or in string in general?

String s = """;    // ?

推荐答案

首先,双引号字符在正则表达式中并没有什么特别之处——它只是另一个字符,所以它不需要转义从正则表达式的角度来看.

Firstly, double quote character is nothing special in regex - it's just another character, so it doesn't need escaping from the perspective of regex.

但是,由于Java使用双引号分隔字符串常量,如果你想在Java中创建一个带有双引号的字符串,你必须将它们转义.

However, because Java uses double quotes to delimit String constants, if you want to create a string in Java with a double quote in it, you must escape them.

此代码将测试您的字符串是否匹配:

This code will test if your String matches:

if (str.matches("".*"")) {
    // this string starts and end with a double quote
}

请注意,您不需要添加 startend 的输入标记(^$) 在正则表达式中,因为 matches() 要求匹配整个输入以返回 true - ^$ 是隐含的.

Note that you don't need to add start and end of input markers (^ and $) in the regex, because matches() requires that the whole input be matched to return true - ^ and $ are implied.

这篇关于如何在正则表达式中表示双引号字符(")?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

相关文档推荐

quot;Char cannot be dereferencedquot; error(“Char 不能被取消引用错误)
Java Switch Statement - Is quot;orquot;/quot;andquot; possible?(Java Switch 语句 - 是“或/“和可能的?)
Java Replace Character At Specific Position Of String?(Java替换字符串特定位置的字符?)
What is the type of a ternary expression with int and char operands?(具有 int 和 char 操作数的三元表达式的类型是什么?)
Read a text file and store every single character occurrence(读取文本文件并存储出现的每个字符)
Why do I need to explicitly cast char primitives on byte and short?(为什么我需要在 byte 和 short 上显式转换 char 原语?)