【发布时间】:2020-01-08 15:35:02
【问题描述】:
我几乎有了我的正则表达式,但后来我遇到了一个我无法解决的问题。
句子:
oListView.sTranslatedPrintHeader = Dictionary.gsTranslate(oClientInfo, "Lastschriftenstapel") & " " & DataMethods.gsGetDBValue(oClientInfo, "BatchDesc", "tdDebitAdviceBatches", "BatchID=" & lBatchID)
Response.Write(Dictionary.gsTranslate(oClientinfo,"Es konnten keine Befehle in der Auswahl dargestellt werden,
" & _ "das Design kann trotzdem modifiziert werden。"))
正则表达式:
(?<=[D-d]ictionary\.gs[T-t]ranslate.*?, ?)( ?")((.|\n|\r)*?"\))
示例和输出:https://regexr.com/4rpfj
所以我的第一个匹配是好的,但是我的正则表达式并没有在那个句子中停止而是继续然后匹配
“BatchDesc”、“tdDebitAdviceBatches”、“BatchID=" & lBatchID)
Response.Write(Dictionary.gsTranslate(oClientinfo,"Es konnten keine Befehle in der Auswahl dargestellt werden,
" & _ "das Design kann trotzdem modifiziert werden。")
我想要什么匹配
"Lastschriftenstapel")
和
"Es konnten keine Befehle in der Auswahl dargestellt werden,<br>" & _ "das Design kann trotzdem modifiziert werden.")
小提示:有一个包含多个匹配项的完整文件。所以我不想要文本中的第一个匹配,我想要每个 Dictionary.gsTranslate 之后的第一个匹配。
【问题讨论】:
-
(?<=(?i)dictionary\.gstranslate(?-i)\([^)]+, *)"[^)]+"适合你吗? -
@ctwheels 完美!谢谢
-
我将其转换为答案