[過去ログ]
正規表現道場@2ch Part3 s/煽り|荒らし/あぼーん/g (989レス)
正規表現道場@2ch Part3 s/煽り|荒らし/あぼーん/g http://tamae.5ch.net/test/read.cgi/php/1069245758/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
735: nobodyさん [sage] 04/10/01 15:03:27 ID:??? >>733 反例は正規表現でお願いします。 http://tamae.5ch.net/test/read.cgi/php/1069245758/735
736: nobodyさん [sage] 04/10/01 15:08:12 ID:??? .5 みたいな表記はステでいいんじゃないの? >>727が判断することだけど。 # Perlスレでは確か「n進数や指数はどうよ?」でブームが終わったような。 http://tamae.5ch.net/test/read.cgi/php/1069245758/736
737: 733 [sage] 04/10/01 15:10:26 ID:??? これは? /^-?\d*(?:\.?\d+)?$/ http://tamae.5ch.net/test/read.cgi/php/1069245758/737
738: nobodyさん [sage] 04/10/01 15:11:04 ID:??? まあ井川のサインボールでも見てリフレッシュしろよ http://2chart.fc2web.com/2chart/igawa.html http://tamae.5ch.net/test/read.cgi/php/1069245758/738
739: nobodyさん [sage] 04/10/01 15:12:00 ID:??? >>737 ・・・・・・・・・。 http://tamae.5ch.net/test/read.cgi/php/1069245758/739
740: 733 [sage] 04/10/01 15:12:51 ID:??? あっ!やっぱ間違えた。。。空文字にマッチしてしまう。。 http://tamae.5ch.net/test/read.cgi/php/1069245758/740
741: nobodyさん [sage] 04/10/01 15:14:01 ID:??? 放置しろ。 http://tamae.5ch.net/test/read.cgi/php/1069245758/741
742: nobodyさん [sage] 04/10/01 17:19:34 ID:??? /^-?(0|[1-9]\d*)(\.\d+)?$/ http://tamae.5ch.net/test/read.cgi/php/1069245758/742
743: 727 [sage] 04/10/01 21:36:43 ID:??? こんばんは。 いくつもありがとうございます。 >>733 .5のような表記は無しです。 試してみたところ>>729 >>742が目的にあった動作をするようなので使ってみます。 みんな良く調べて何が違うのが勉強してみます。 正規表現、便利だけど難しいですね http://tamae.5ch.net/test/read.cgi/php/1069245758/743
744: nobodyさん [sage] 04/10/02 16:22:06 ID:??? $mes = ereg_replace('([^[:graph:]])([[:alpha:].]{2,})([^[:graph:]])', '\1<a href="keyword.php?q=\2">\2</a>\3', ' ' . $mes); こうやって、URLの可能性がないアルファベットの連続をキーワードとしてリンクさせたいのですが、 これだとスペース置きにキーワードが並んだ場合、どちらかしか replace されません。 MSN Messenger など MSN と Messenger 両方にマッチさせたいのですが、 何か良い方法はありませんでしょうか。 http://tamae.5ch.net/test/read.cgi/php/1069245758/744
745: nobodyさん [sage] 04/10/03 02:24:24 ID:??? ereg_replace('([[:alpha:].]{2,})((?=[^[:graph:]])|$))', '<a href="keyword.php?q=\1">\1</a>', ' ' . $mes) とりあえず、これでいいと思う。 自分はURLを「http:」で始まる単語としたくて、 (?<!http:)([^\s]{2,}) でやってみたけど、 [^\s]が全部取っちゃうようでうまくいかなかったorz http://tamae.5ch.net/test/read.cgi/php/1069245758/745
746: nobodyさん [sage] 04/10/03 02:25:54 ID:??? スマソ。括弧を1つ取るの忘れた。 ×((?=[^[:graph:]])|$)) ○((?=[^[:graph:]])|$) http://tamae.5ch.net/test/read.cgi/php/1069245758/746
747: 744 [sage] 04/10/03 04:57:52 ID:??? >>745-746 回答ありがとうございます。 XREA を利用しているので PHP の 4.3.8 を利用しているのですが、 Warning: ereg_replace(): REG_BADRPT が出てしまいました (いろいろ試したみたところ、 (?= に反応しているようでした)。 preg mb_ereg でも同様のコードを試してみたところ (?= はパスするものの ereg と違って [:graph:] に日本語がマッチしてしまうようです(こっちが正しいのかな?)。 745のコードを参考に mb_ereg で以下のように書き直してみたところなんとか動作しました。 $mes = mb_ereg_replace('([a-zA-Z.]{2,})((?=[^a-zA-Z0-9<>":;.,/=?+_&@\-])|$)', '<a href="keyword.php?q=\1">\1</a>', $mes); よくわからないのですが、[:alpha:]を使うと漢字にマッチしたりして挙動が変になっていました。 うーん、まだまだ勉強が必要です。 http://tamae.5ch.net/test/read.cgi/php/1069245758/747
748: nobodyさん [sage] 04/10/03 05:14:58 ID:??? eregはPosix拡張、pregはPerl拡張。 http://tamae.5ch.net/test/read.cgi/php/1069245758/748
749: nobodyさん [sage] 04/10/03 05:29:07 ID:??? 正規表現ライブラリがちがううんだよ。PHPマニュアルにも書いてあるが、 例によって>>1の正規表現メモんとこ参照すると分かりやすい。 http://tamae.5ch.net/test/read.cgi/php/1069245758/749
750: nobodyさん [sage] 04/10/03 22:20:30 ID:??? あるシステムの独自タグをあつかっています。 <XXXX Name = Test1 number = 1 value1 = "テスト" value2 = "テスト\"ああ\"" value3="テスト3 \t test"> </XXXX> という具合に、<XXXX で始まるタグの中にかかれた各属性と値をそれぞれ分割したいのです。最初、Javaプログラムで頑張って書いていましたが、 へたれな自分のプログラムが長くなってしまいバグも所々に…。くせものが属性と値の表記で、valueというキーの値がaaaa としても、 value = aaaa の場合 value = "aaaa" の場合で異なる値にしたい(" がポイント) value=aaaa や、途中で改行やタブが入る、 value= aaaa といった場合もあります。 値の中に、ダブルクォーテーションが入る場合やスペースが入った場合を考慮してJavaプログラムで何とかしようと思ってましたがスパゲッティ状態です。 正規表現でエイヤっと属性名と値で分割させたいのですが、、、>>1のサンプルをあさってますが、もし、何か良いモノ知っていましたら教えてください。 http://tamae.5ch.net/test/read.cgi/php/1069245758/750
751: 750 [] 04/10/03 22:21:42 ID:au5XkXk9 ageときます。スマン http://tamae.5ch.net/test/read.cgi/php/1069245758/751
752: nobodyさん [sage] 04/10/04 01:59:41 ID:??? >>750 その独自タグの仕様をはっきりさせなければ誰もわからんよ。 「=」の隣にスペースが入っていたりダブルクォートでくくっていたり いなかったりしてるし。 http://tamae.5ch.net/test/read.cgi/php/1069245758/752
753: nobodyさん [sage] 04/10/04 02:00:16 ID:??? s/<XXXX[\n\s]+([^>]*)>(.|\n)*<\/XXXX>/$1/g; /(.+?)[\n\s]*=[\n\s]*("(\\"|[^"])+"|[^\s]+)(?:[\n\s]+|$)/; #$1=属性, $2=値 やっとできた・・・。 \"を含める方法とか、勉強になりました。 http://tamae.5ch.net/test/read.cgi/php/1069245758/753
754: 753 [sage] 04/10/04 02:10:49 ID:??? >>752 そうだ、 >value = aaaa の場合 >value = "aaaa" の場合で異なる値にしたい(" がポイント) これがどういう結果を望んでいるのか分からないままやってたw とりあえず、ダブルクォートは残す仕様にしておいたけど。 http://tamae.5ch.net/test/read.cgi/php/1069245758/754
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 235 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.023s