[過去ログ] 正規表現道場@2ch Part3 s/煽り|荒らし/あぼーん/g (989レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
341(1): 04/03/11 22:40 ID:??? AAS
>>340
/^(\w+)(?:$|(?<![A-Za-z])%(\w+)$)/
342: 340 04/03/11 23:05 ID:??? AAS
>>341
ありがとうございました。完璧です。
こういうときに Positive Lookbehind Assertion 使うんですね。
ぜんぜん思いつきませんでした orz
343(4): 04/03/22 16:58 ID:JNc4vCtR(1) AAS
if( !reply_to || reply_to.search(/\d/) )
JavaScriptでの分岐条件ですが、
「reply_toがないか、あるいはあっても数字以外の文字が含まれている場合はtrue」
という条件式です。
上記でどうもうまく行っているのですが解せません。
数字以外の文字って「\D」ですよね。何か勘違いしていますか?
perl/CGI+JavaScriptで製作中ですが正規表現はあまりやった事ないです。
あるいは上記条件式だとどう書くのが普通ですか?
344: 04/03/22 17:03 ID:??? AAS
>>343
Web制作板で聞けよ
if (inNan(reply_to)) でどうだ?
345(1): 04/03/22 17:04 ID:??? AAS
if (inNaN(reply_to)) だった
346: 04/03/22 17:54 ID:??? AAS
>>345
> if (inNaN(reply_to)) だった
isNaN(reply_to)でした。
こんなんがあるんですね。
勉強になりました。
347(3): 04/03/22 18:05 ID:??? AAS
isNaN で良いの? isNaN("123foo") とかも false になるよ。
あと、aString.search(aRegExp) は、「マッチした位置」を返すので、
たぶん >>343 のはうまくいっていないと思われ。
マッチしないときには -1 を返すので、
if ( !reply_to || reply_to.search(/\D/) >= 0 )
とかじゃないかな?
348(2): 04/03/22 18:21 ID:??? AAS
>>347
falseになるわけねぇだろうが
349: 343 04/03/22 18:24 ID:??? AAS
>>347
> isNaN で良いの? isNaN("123foo") とかも false になるよ。
えーと、今回は数字以外の文字が含まれてたら false でオッケイです。
>
> あと、aString.search(aRegExp) は、「マッチした位置」を返すので、
> たぶん >>343 のはうまくいっていないと思われ。
> マッチしないときには -1 を返すので、
> if ( !reply_to || reply_to.search(/\D/) >= 0 )
> とかじゃないかな?
なるほど、、、微妙に返り値が違うんですね。
省6
350: 343 04/03/22 18:26 ID:??? AAS
>>348
> >>347
> falseになるわけねぇだろうが
ああ、そうですね。数字かどうかですからね。
trueでいいんです。
たぶんうっかりミスですね。御指摘どうも。
351: 04/03/22 18:41 ID:??? AAS
>>348
げ、処理系依存なのか。確かに IE だとならないね。
でも、 isNaN("1e0") とかは false になるよね?
352: 04/03/29 21:33 ID:??? AAS
復帰
353: 04/04/08 15:03 ID:AQ8qwK3r(1) AAS
"abcdeあいうえお\"fghijかきくけこ";
のようなダブルクォートで囲まれた文字列を取得したいのですが、
文字列に\"を含んでいる場合うまく取得できません。
"[^"]*"と書いているので当然と言えば当然なのですが・・・
どのようにしたら、\"を含む文字列をうまく取得できますでしょうか?
354(1): 04/04/08 15:38 ID:??? AAS
余計なことをせずに最長マッチさせればいいんじゃないの。
/"(.*)"/
こういうのもありかもしれないけど。
/"((?<=\\").*)"/
355: 354 04/04/08 15:46 ID:??? AAS
盆ミスー適当に修正して
356: 04/04/08 17:11 ID:??? AAS
正規表現とかその手の本には必ず出てくる例題だな。
357(3): 04/04/09 17:13 ID:Nk138A/f(1) AAS
かれこれ半日もんどりうってます....
htmlファイル中で、aタグ中のリンク先の置換をやりたいのですが、
・mailto:やtel:が含まれる場合は除外
・リンク先(href="url")のurlが、cgiやphp、jspだったら除外
というのをやりたいのです。
で、それで引っ掛かった分(htmlやhtm)を、特定の文字列に置換したいのです。
で、
/<a href="(([^(tel:|mailto:)][-0-9a-z/@~]+[^(.php|.cgi)]") ([^>]+))>/i
なんてやってるんですが、思うようにならんです。
どこがおかしいのでしょう?
省1
358(2): 未承諾広告※ ◆aiY4htt2.2 04/04/09 17:59 ID:??? AAS
>>357
もしかして、//i -> s///i かな?
s{<a href="((?<!tel:|mailto:).+?(?!\.php|\.cgi)".+?>)}{url=$1}i;
実証はしていませんm(_ _)m
359: 未承諾広告※ ◆aiY4htt2.2 04/04/09 18:12 ID:??? AAS
>>358
グダグダやね鬱。
360: 04/04/09 19:04 ID:??? AAS
>>357-358
s/<a href="((?!tel:|mailto:)[-_.!~*'()a-z0-9;\/:@&=+$,%#]+(?<!\.php|\.cgi))"[^>]*>/url=$1/i;
こんな感じ?
>>357
'?'を許さないことで、クエリストリング付きは
即時却下する所が面白いね。
上下前次1-新書関写板覧索設栞歴
あと 629 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.019s