2015-08-31 210 views
-3

如何使用RegEx將[email protected]替換爲[email protected]如何將[email protected]替換爲[email protected]

我想剝離@ a.net與@ b.com

更換我已經試過

(.*@a.net) 

但是$ 1是表示所有的字符串。 因此,當我試圖取代它,它成爲

[email protected]@b.com 

而且可以有人點我關於正則表達式的一個很好的教程?

+0

@hwnd你是什麼意思還有呢?我完全沒有線索 – Hendrik

+1

對不起@hwnd我編輯我的問題,我的意思是第一個匹配的字符串保持不變,但第二個(a.net)更改爲(b.com) – Hendrik

+0

歡迎來到StackOverflow !我們很樂意幫助你。您可能想查看[如何提出一個好問題](http://stackoverflow.com/help/how-to-ask)並重新考慮您的發佈。 – PaulProgrammer

回答

2

()指示捕獲組。把表達的部分,你不想在括號外面捕捉:

(.*)@a.net 

一個偉大的網站正則表達式來玩耍是http://refiddle.com/

fiddled this problem已經。

+0

感謝@PaulProgrammer,這就是我要找的。 我在cisco exp-e中爲搜索規則使用了這種正則表達式匹配模式。 我覺得這個答案會起作用。 但是,Narendra的答案如何產生相同的結果? – Hendrik

+0

TMTOWTDI - 「有多種方法可以做到這一點」 – PaulProgrammer

2

可以使用

\[email protected][a-zA-Z].net\b 
  • \b設置字邊界之前@
  • @的字符匹配@字面上
  • a-zaz之間的範圍中的單個字符(大小寫)
  • A-ZAZ(區分大小寫)之間的範圍中的單個字符
  • .任何字符(除新行)
  • net匹配的字符net字面上(區分大小寫)
  • \b字邊界
匹配

上述正則表達式將捕獲字面上的給定字符,您可以使用它來替換@b.com

你只是想捕捉只有@a.net比你可以簡單地使用

\[email protected]\b 

Regex Demo

相關問題