Java Regex用于匹配带引号的字符串和转义引号

我知道已经有很多像我这样的问题,但是我找不到适用于Java的答案.所以我写了一个新问题.

我有包含这样内容的文本文件:

key1 = "This is a \"test\" text with escapes using '\\' characters";
key2 = 'It must work with \'single\' quotes and "double" quotes';

我需要一个与双引号(或单引号)中的值匹配的正则表达式.此正则表达式必须支持转义的引号和转义的反斜杠.
正则表达式必须与Java标准Pattern / Matcher类一起使用.

解决方法:

试试这个正则表达式:

'([^\\']+|\\([btnfr"'\\]|[0-3]?[0-7]{1,2}|u[0-9a-fA-F]{4}))*'|"([^\\"]+|\\([btnfr"'\\]|[0-3]?[0-7]{1,2}|u[0-9a-fA-F]{4}))*"

并作为字符串文字:

"'([^\\\\']+|\\\\([btnfr\"'\\\\]|[0-3]?[0-7]{1,2}|u[0-9a-fA-F]{4}))*'|\"([^\\\\\"]+|\\\\([btnfr\"'\\\\]|[0-3]?[0-7]{1,2}|u[0-9a-fA-F]{4}))*\""
上一篇:PHP函数来逃避MySQL regexp语法


下一篇:java – 来自commons-httpclient-3.1的URIUtil.encodePath发生了什么?