2009-04-15 11 views
0

私は正規表現の必要性を知っていますこれを理解することには私は非常にスマートではありませんが、私はそこに着くでしょう。regex replace

私の質問:

私は、文字列からのバナーサイズを削除する必要があり、

バナーサイズはどのように私は空白でこれを置き換えるために正規表現を使用することができます486X60または49 X 120

することができますか?

答えて

2
s/\d+\s*[Xx]\s*\d+// 
+0

"s/\ d + \ s *"の代わりに "\ s \ d + \ s *"を意味しませんか? – Keng

+0

実際はそうではありません。提供される情報OPは、それが適切かどうかを知るには不十分です。 – chaos

0

基本的な考え方は、正確な構文は、使用しているどのような言語に依存しますが、あなたがしたい場合、それは

s/\d+[ ]?X[ ]?\d+// 

または、次のようになります

 
1 or more digits 
a space (optional) 
X 
another space (optional) 
1 or more digits 

のようなものですXにいずれかのスペースがあるか全くないかを確認するには、次の2つのケースを分けることができます。

s/(\d+ X \d+)|(\d+X\d+)// 

これは、あなたが言及した2つの例を正確にカバーします。 Xの周りに空白を許可したい場合、またはXを小文字にする場合は、カオスの解決法がそれをカバーします。

+0

これは私が感謝の気持ちで終わったことです、もしあなたがそれに間違っているものがあれば教えてください。 [0-9] + \ s * [Xx] \ s [0-9] + また、このサイトで使用しているツールもあります。 http://regex.larsolavtorvik.com/ ありがとうございました –

+0

これは、カオスの答えと同じですが、Xの後ろに空白文字が必要になっていることを除いては答えです。オプションにしたい場合は、*を2番目の\ s。 –