首頁 > 後端開發 > Golang > 如何解決 Go 正規表示式中的環視問題?

如何解決 Go 正規表示式中的環視問題?

Patricia Arquette
發布: 2024-11-24 11:30:16
原創
1039 人瀏覽過

How to Work Around Lookarounds in Go Regular Expressions?

解析正規表示式時出錯:無效的Perl 語法- 了解問題並尋找解決方法

嘗試編譯正規表示式「^( ? !On.*On\s. ?wrote:)(On\s(. ?)wrote:)$" Go中常見的錯誤遇到的是:

error parsing regexp: invalid or unsupported Perl syntax: (?!
登入後複製

這個錯誤源自於Go 不支援lookarounds,這是Perl 正規表示式中可用的語法功能,允許負向lookaheads,如(?!.

理解Lookaround語法

在正規表示式中,lookaround 是一個斷言的元字元不消耗輸入字串中任何字元的條件。應在目前位置匹配。 🎜>

由於Go不支援lookarounds,所以不能直接使用上面的正規表示式,而是使用多個正規表示式和條件檢查的解決方法。

使用regexp.MustCompile 函式編譯正規表示式模式,因為它會出現恐慌針對無效表達式,簡化錯誤處理。格式的假設。

以上是如何解決 Go 正規表示式中的環視問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板