微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

正则表达式检测单行

如何解决正则表达式检测单行

需要正则表达式来检测单行字符串,我试过这个正则表达式 \"(\\.|[^"\\])*\" 但这也适用于多行 输入:

示例:


this is a "string
and the string ends here"

我希望正则表达式只检测第一行中的字符串(“字符串”)

我该怎么办?

解决方法

您的正则表达式可以识别多行,因为

[^"\\]

接受换行符:它接受除引号 (") 或反斜杠 (\) 以外的任何内容,并且换行符既不是引号也不是反斜杠。将换行符 (\n) 添加到排除字符列表中。

请注意,在 (f)lex 中,. 实际上表示 [^\n]:除换行符以外的任何内容。这并不意味着“匹配任何东西”。所以 \\. 匹配反斜杠后跟除换行符以外的任何内容。但是许多语言也允许您使用反斜杠来转义换行符:

"This long string is \
continued on a second line."

当然,这不是必需的,字符串文字连接可能是一种更有用的语法。这完全取决于您的具体要求。

,

(.*)\n

我觉得这些就够了吗?

\A(.*)\n

如果有两行以上,这会有所帮助

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。