我有一个正则表达式公式,可用于查找数据中的特定模式。具体来说,它首先在“ {}”括号之间寻找字符,然后寻找“ p。”并在其后获取数字。我注意到,在某些情况下,如果方括号后不久没有“ p。”值,它将继续经过下一个方括号并在其后获取数字。
例如,这是我的示例数据:
{Hello}, [1234] (Test). This is sample data used to answer a question {Hello2} [Ch.8 p. 87 gives more information about...
Run Code Online (Sandbox Code Playgroud)
这是我的代码:
\{(.*?)\}(.*?)p\. ([0-9]+)
Run Code Online (Sandbox Code Playgroud)
我希望它只返回此:
{Hello2} [Ch.8 p. 87
Run Code Online (Sandbox Code Playgroud)
但它返回以下内容:
{Hello}, [123:456] (Test). This is stample data used to answer a
question {Hello2} [Ch.8 p. 87
Run Code Online (Sandbox Code Playgroud)
有没有一种方法可以排除包含“ {”的字符串?
regex ×1