在 Excel 中,我讓 VBA RegExpFind 尋找這種模式:
Fields\("(\w ?)"\)\.Value =
目標:
Fields("lmlEmployeeID").Value = oRs.Fields("lmpEmployeeID").Value
公式: =RegExpFind([@Code], [@pat], 1, FALSE, 0 )
結果: Fields("lmlEmployeeID").Value =
預期結果: lmlEmployeeID
雖然模式涉及雙引號和括號,但由于模式是單元格中的文字,我避免了 excel 字符轉義問題 - 所以我想。無論如何,這些都在捕獲組之外。
隨著模式成功,我不知道為什么第一個分組不兌現。

看起來我成功地匹配了顯示的函式名稱,但這是一個不使用 RegExpFind 的簡單情況。
我已經看過這些相關的問題:

EDIT2:我擁有的插件是不同的。它可能已經過時了:

uj5u.com熱心網友回復:
您可以使用lookbehind 和lookahead,它們允許您在所需匹配之前和之后指定文本,而無需將它們包含在匹配中。
新模式 - 使用 Lookbehind 和 Lookahead
(?<=Fields\(")(\w ?)(?="\)\.Value =)測驗字串
Fields("lmlEmployeeID").Value = oRs.Fields("lmpEmployeeID").Value比賽
lmlEmployeeID試試看!
重要的提示:
在 VBA 中設定模式時,您需要對引號進行轉義,否則它會認為您正在關閉和打開一個字串。
RegExpObject.Pattern = "(?<=Fields\("")(\w ?)(?=""\)\.Value =)"uj5u.com熱心網友回復:
問題實際上是“錯誤的”Reg Exp Find 函式。許多在那里有相同的名稱,但在函式名稱大小寫上有表面差異。我卸載了我擁有的那個并安裝了 Excel 的 SEO 工具(15 天試用許可證)。它有效(有和沒有回顧/展望)。我原以為微軟現在會對 Excel 提供本地 Reg Exp 支持。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/377516.html上一篇:如何在正則運算式中包含特殊字符?
