我正在使用Google Sheets文檔,在該文檔中需要處理字符串並提取其中的某些部分。這些字符串具有以下形式:如何搭配某物「之前/之後」是否有正則表達式?
廣告名稱:FOO_FOOBAR_DE_CH_Zagreb + N1_970x250.zip; 970x250的
我需要提取兩個 「場」:
- 薩格勒布
- 的970x250
很明顯,第一個總是被"\_"
和"+"
這使得事情有點包圍更容易,另一個或者被"_"
和"."
包圍,或者在"; "
之前,如果我要從最後捕獲它的字符串。
我正在嘗試使用Google表格專有的REGEXMATCH
公式(read more about it here),但我必須做錯某些事情。如果重要,Google產品使用RE2 RegEx「flavor」。
這是我到目前爲止有:
=REGEXEXTRACT(text, "(?:_)[A-Za-z]+(?:\+).*")
這一次返回:
_Zagreb +
,所以我需要減肥了 「_」 和 「+」。我明白,對於這種類型的操作(在特定字符之間提取文本)應該使用環視,但我對這些操作仍然很不熟悉。另外,我明白其中的一些(負面後顧最顯着)不適用於JavaScript。
這是嘗試2:
=REGEXEXTRACT(text, ".*[A-Za-z]+(?=\+.*)")
這一個只是拋出一個#REF
錯誤。我覺得這兩個寶貴的資源,學習正則表達式:
但由於我時間不夠,我不能詳細地現在研究這個。
僅供參考:我認爲您需要使用REGEXEXTRACT實際返回*文本*,而不僅僅是TRUE或FALSE。 –
對不起,我在我的Q中拼錯了它,我用REGEXEXTRACT。謝謝:) –
所以,你需要'REGEXEXTRACT's,對吧?對於Zagreb - '= REGEXEXTRACT(F15,「_([a-zA-Z] +)\ +」)'和分辨率,嘗試'= REGEXEXTRACT(F15,「; \ s *([0-9x] + )$「)' –