私は以下の正規表現を使用してメールアドレス: re.findall('@(.+?)',str)
からドメインを取得していますが、意図した結果が得られません。電子メールからドメインを取得するRegex
私は正しい正規表現を持っています:re.findall('@(\w.+)',str)
。
パターンの違いを説明してください。
私は以下の正規表現を使用してメールアドレス: re.findall('@(.+?)',str)
からドメインを取得していますが、意図した結果が得られません。電子メールからドメインを取得するRegex
私は正しい正規表現を持っています:re.findall('@(\w.+)',str)
。
パターンの違いを説明してください。
主な違いは、実際のドメインと一致する点です。
.
改行文字以外の文字に一致します。+
前の要素(.
)を1回以上マッチさせます。?
この場合、リピータの後ろにあるため、「怠け者」になります。これがなければ、可能な限り何度もマッチする "貪欲"になるでしょう。リピーターが「怠け者」である場合、リピーターはできるだけ少ない回数で一致します。 W \\w
一致する "単語文字"(一般にアルファベット大文字と小文字、下線)。.
改行文字以外の文字に一致します。+
前の要素(.
)を1回以上繰り返します。 ?
が存在しないため、可能な限り何度も一致します。2つの違いを説明する必要があります。一致したい、または一致しない例があり、元の投稿に追加する場合は、その理由を説明するのに役立ちます。
私は両方の方法を使用して、 abc @ google.com、def @ rediff.com ..etc、両方のパターンで同じ結果が得られますか? @Whothehellisthat – Salman
まあ、あなたは、最初のものは "私に意図された結果を与えていない"と言った。最初のものが望みどおりに動作しないとすでに決めているのなら、なぜ私に尋ねていますか?どうしてわかるの?いくつかの例を挙げてください。 – Whothehellisthat
私は最初のパターンで私が怠惰な検索を使用していることを理解しました、 – Salman
Googleに常に覚えておいてください。 'Regex to email from email'というクエリは、440万の結果を持っています。確かにそのうちの1つがこの共通の共通の問題を解決するのに役立ちます。 –
[Regexは電子メールからドメイン名を取得する]の複製があります(http://stackoverflow.com/questions/39027204/regex-get-domain-name-from-email) –