我試圖自己創建正則表達式,但我無法做到。所以我希望得到一些幫助。我得到一個字符串是這樣的:正則表達式 - 值後=直到;
test=foo;test1=bar;test2=;test3= .some.other.stuff
後,我的正則表達式findind值的 「=」
(?<[email protected]=).+?(?=;)
它只有
- @測試工作=
- TEST1 = (並且僅當它在=後具有值時)
有人可以幫我嗎?我總是需要「=」後面的值,如果沒有值,我需要一個「空白匹配」。
更麻煩的是字符串的末尾,因爲它沒有「;」了。
我有它作爲第一拆分操作,但我希望它儘可能高性能。通常我會使用字符串操作(如split,replace,substring和remove)來完成所有任務,但是爲了這個任務,我想使用正則表達式,因爲我經常在很短的時間內收到這個字符串(使用不同的值),我需要儘快處理它們儘可能。 – Shamshiel
@Shamshiel從性能的角度來看'IndexOf' /'Substring'可能會更好 - 特定情況下正確的手寫狀態機將擊敗由Regex生成的同一個狀態機。因爲任何表演練習都會假設你要麼嚴格地進行娛樂/教育,要麼真正測量了代碼,並發現這個特定片段是主要瓶頸。 –
感謝您的詳細解答。我一直認爲RegEx比字符串操作更快。 – Shamshiel