2011-02-03 16 views

答えて

3
var rcpt = 'coder<[email protected]>'; 
var addy = rcpt.match(/<([^>]*)>/)[1]; 
// addy = '[email protected]' 
+0

エスケープする '<' and '> 'は必須ではありません:'/<([^> *)>/'または同等に'/<(.*?)>/'または'/<(.*)>/'であっても有効なメールアドレスのみが含まれていると仮定します。 –

+0

私は実際にrcpt.replace(正規表現)のような解決策を探しましたが、まだこのyeilds結果を得ています。 – Harish

+0

@Felix:ああ、ありがとう。ある正規表現の方言が必要なところにあり、 '\ <' or '\>'エスケープされた正規表現は正規表現を台無しにするので、私は日常的にそれらをエスケープします。私はそれらを削除するために投稿を編集しました。 – Martijn

1

あなたはhttp://regexlib.com/を知っていますか?

これは、正規表現を使用して正規表現を試すための正規表現のコーチ付きのサイトです。

また、あなたはこのように手動で置き換えることができます...

str.remove(string.indexOf('<'), 0) 
str.remove(0, string.indexOf('>')) 

か何か等しい得られます

+0

を'[email protected]'、whi chはおそらくOPが望むものではありません。 –

+0

はい...それはその場でそれを作った例です。ただ考えを示すために... – elp

-1

トライstr.replace

 
<script type="text/javascript"> 


document.write(str.replace("coder<[email protected]> 
", "[email protected]")); 

</script> 
+0

私はこのように言った質問をチェックしてください!正確ではありません! – Harish

2

str.split("<")[1].split(">")[0];