匹配成对双引号的正则表达式

时间:2021-06-03 03:41:57

标签: regex

我有一个字符串:

Rectangle::Rectangle(Point p1, Point p2, Point p3, Point p4) : Polygon(std::vector<Point>{p2, p1, p3, p4}) {}

注意:I say “hello “world” ”foo“ bar” 不是

我怎样才能得到第一对双引号包围的字符串:

"

2 个答案:

答案 0 :(得分:0)

(?<=“)(\w*?)(?=”)

这将组合使用 Look Beyond 和 Look Ahead 并捕获两者之间的所有内容。

输出是世界

Demo

答案 1 :(得分:0)

抱歉,误解了您的问题。 这应该会清除您提供的文本片段中不匹配的卷曲引号。

\W?(\w* )(“\w*”)|(”\w*“)( \w*)\W?

替补

$1$2$3$4

你好“世界”“foo”栏

Link to Demo of Answer