1 名前:デフォルトの名無しさん mailto:sage [2009/05/06(水) 00:36:04 ] 正規表現(Regular Expression)スレです。 質問する場合は実装言語や処理系ソフトウェア名を示しておくと話が早いです。 【 前スレ 】 正規表現 Part5 pc12.2ch.net/test/read.cgi/tech/1212498448/
381 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 23:33:37 ] 拗音の「ぁぃぅぇぉゃゅょァィゥェォャュョ」と促音の「っ」が複数個連続した場合にSAPI5を使うソフトウェアがハングアップします。 ところが「うわぁぁぁぁ」のような表現は日常的に存在しているためにそのたびにハングアップして閉口してます。 正規表現で小さい文字を大きくすることは可能ですか?
382 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 23:40:53 ] ょぅι゛ょ
383 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 23:54:43 ] s/ょぅι゛ょ/ 妖女/
384 名前:デフォルトの名無しさん mailto:sage [2009/08/26(水) 23:57:31 ] こすると大きくなるよ
385 名前:デフォルトの名無しさん mailto:sagesage [2009/08/27(木) 00:04:25 ] こすったら膿出てきた
386 名前:デフォルトの名無しさん mailto:sage [2009/08/27(木) 00:18:54 ] 淋しい病気ですか
387 名前:デフォルトの名無しさん mailto:sage [2009/08/27(木) 00:32:52 ] >>386 下手糞なツッコミ もっと激しく!!
388 名前:デフォルトの名無しさん mailto:sage [2009/08/27(木) 10:57:46 ] >>381 s/ぁぃぅぇぉゃゅょゎァィゥェォヶャュョヮ/あいうえおやゆよわアイウエオケヤユヨワ/g
389 名前:デフォルトの名無しさん mailto:sage [2009/08/27(木) 11:01:29 ] 性器表現だけじゃできなそうだな。
390 名前:デフォルトの名無しさん mailto:sage [2009/08/27(木) 11:20:00 ] tr/ぁぃぅぇぉゃゅょゎァィゥェォヶャュョヮ/あいうえおやゆよわアイウエオケヤユヨワ/ s/ぁ/あ/g s/ぃ/い/g s/ぅ/う/g s/ぇ/え/g s/ぉ/お/g s/ゃ/や/g s/ゅ/ゆ/g s/ょ/よ/g s/ゎ/わ/g s/ァ/ア/g s/ィ/イ/g s/ゥ/ウ/g s/ェ/エ/g s/ォ/オ/g s/ヶ/ケ/g s/ャ/ヤ/g s/ュ/ユ/g s/ョ/ヨ/g s/ヮ/ワ/g
391 名前:デフォルトの名無しさん mailto:sage [2009/08/27(木) 18:29:07 ] どうでもいいけどそれは SAPI5 とやらを直すべきではないのか?
392 名前:デフォルトの名無しさん [2009/08/27(木) 19:12:10 ] マッチするなら電子メールアドレスである事が保証できる 正規表現を教えて下さい
393 名前:デフォルトの名無しさん mailto:sage [2009/08/27(木) 19:24:33 ] 完全にやるのはひどくおおごとで、 かつルール違反のアドレスが結構ある。 とりあえず使えればいいのであれば、メールアドレス 正規表現 で検索
394 名前:デフォルトの名無しさん mailto:sage [2009/08/27(木) 19:44:38 ] DoCoMoもauも、ちょっと前までは連続ドット(RFC違反)の メールアドレスが普通に作れちゃったから困ったもんだ。
395 名前:デフォルトの名無しさん mailto:sage [2009/08/27(木) 19:52:12 ] >>392 まずググる、という発想すらできない君にはこれがお似合いだよ .+@.+
396 名前:デフォルトの名無しさん mailto:sage [2009/08/27(木) 21:16:55 ] >>391 「暗いと不平を言うよりも、すすんで明かりをつけましょう」
397 名前:デフォルトの名無しさん mailto:sage [2009/08/27(木) 22:41:53 ] >>395 それじゃあ > マッチするなら電子メールアドレスである事が保証できる を満たしてないだろ。 これなら条件を満たすだろ。 [a-z]{6,30}@gmail.com
398 名前:デフォルトの名無しさん mailto:sage [2009/08/27(木) 23:53:56 ] こっちの方がいい [^@]+@gmail.com
399 名前:デフォルトの名無しさん mailto:sage [2009/08/27(木) 23:58:02 ] >>397-398 やりがちだよなぁ、\.comとかのエスケープ忘れ しかもそうそう異常判定が起きないから潜在的なバグになりやすい
400 名前:397 mailto:sage [2009/08/28(金) 00:26:28 ] >>399 ごめんなさい。反省します。 >>398 それだと「マッチするなら電子メールアドレスであることが保証できる」が満たせないよね。
401 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 00:57:19 ] 命題トリックだな
402 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 01:02:24 ] 連. はイケないとか "に囲まれてるなら@も連.もおkとか イカレてるわ
403 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 01:22:04 ] 正規表現だけでなんとかしようって方がイカレてるわ
404 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 09:38:08 ] 到達できないアドレスは電子メールアドレスとして保証されていると言えるの?
405 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 12:21:25 ] 一般的には言えないかもしれないけど、 そこはこのスレのお題の範疇を超えるんで、気にしなくて良いんじゃないかと思う。
406 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 12:30:48 ] 俺はKENT氏が使っているこれを利用してるけど /[\w.-]+@[\w.-]+\.[a-zA-Z]{2,6}$/
407 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 13:25:52 ] KENT氏(笑)
408 名前:デフォルトの名無しさん [2009/08/28(金) 13:30:29 ] KENT氏()笑
409 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 13:39:48 ] はいどうぞ ttp://www.din.or.jp/~ohzaki/mail_regex.htm
410 名前:デフォルトの名無しさん [2009/08/28(金) 13:43:16 ] >>409 うんざりしたw これはRFCが悪い。
411 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 14:27:48 ] >>406 これはひどい。 local-partの記号類をまったく受け付けないじゃん。 Gmailの拡張アドレスが弾かれちゃうね。
412 名前:デフォルトの名無しさん [2009/08/28(金) 14:29:02 ] >>411 「マッチするなら電子メールアドレスである事が保証できる 」 を満たせばおkなんじゃないの?
413 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 14:37:11 ] 極端な話だけど/foo@example\.com/も条件を満たすよ >>397 はそういうジョークだろう
414 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 15:24:14 ] >>412 そういう意味ならなおさら >>406 はまるでダメでしょ。 電子メールアドレスでないものも余裕でマッチする。
415 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 15:27:38 ] これはどうなん? search.cpan.org/~rgarcia/perl-5.10.0-RC1/pod/perlfaq9.pod#How_do_I_check_a_valid_mail_address?
416 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 15:33:15 ] >>415 ああ、俺もそれ使ってるわ。 日本語の解説はこれな。 ttp://blog.livedoor.jp/dankogai/archives/51189905.html
417 名前:デフォルトの名無しさん [2009/08/28(金) 15:40:45 ] >>416 そのページにあるリンク先見てて思ったんだが [.] とか [@] って何の意味があるんだろ。 ときどき目にするんだが。。
418 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 16:04:50 ] >>417 [@]はあんまり意味がないと思うけど、[.]は\.を使うよりいい(見やすい?)と、Damian Conway先生が 言ってたような気がする。
419 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 16:16:48 ] >>415 そこに書いてある、このモジュールを使えばいいんかな? RFC::RFC822::Address -- RFC 822 style address validation. - search.cpan.org search.cpan.org/~abigail/RFC-RFC822-Address-2009040601/lib/RFC/RFC822/Address.pm
420 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 16:43:24 ] >>417 [@] は配列が展開されるのを防ぐのかな?
421 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 16:47:38 ] >>409 ジョークか?
422 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 21:11:37 ] Javaでも20行未満で書けるレベルの処理だろうに。
423 名前:デフォルトの名無しさん [2009/08/28(金) 21:23:59 ] >>422 それもう面白くないよ。
424 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 22:58:46 ] /:::::::ヽ____/::::::::ヽ、 丿 ::.__ .::::::::::::: __ ::::ヽ_ ,. 、 / / / /。 ヽ_ヽv /: /。ヽ ::::::ヽ ,.〃´ヾ.、 / / / / ̄ ̄√___丶  ̄ ̄\ ::::| / |l ', / / | .:::::::::: / / tーーー|ヽ ..::::: ::|r'´ ||--‐r、 ', javaなら20行で書ける!! | .:::::. ..: | |ヽ .,..ィ'´ l', '.j '. javaなら20行で書ける!! | ::: | |⊂ニヽ| | 'r '´ ',.r '´ !| \ | : | | |:::T::::| ! l! ....:.:.:.:.:.:ヽ、 ,l \ \: ト--^^^^^┤ ゝ、.,_ ---‐‐‐----ゝ、ノ
425 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 02:27:04 ] ちなみにJavaなら20行未満で書けるぞ
426 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 07:51:01 ] \ 地獄ですね
427 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 09:40:01 ] 「全然」が現れてから次の「。」までに「ない」「なく」「なかった」「ません」が来ない文にマッチさせるには?
428 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 12:41:16 ] /全然(?!ない|なく|なかった|ません).*。/
429 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 13:23:45 ] 松来未祐と金田朋子のRADIOデコピンないと、ひぐらしのなく頃に、本当にすまなかったと思っている、うちのタマ知りませんか 等もマッチしなくなるよ
430 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 14:01:20 ] >>429 字面だけで処理しようってんだから、そこまで気にしてやる必要は無いんではないか
431 名前:デフォルトの名無しさん mailto:sage [2009/08/30(日) 22:57:51 ] >>428 "全然勝負にならない。" にマッチしちゃうよ。
432 名前:デフォルトの名無しさん mailto:sage [2009/08/31(月) 01:06:53 ] 全然問題ない 全然なくならない
433 名前:デフォルトの名無しさん mailto:sage [2009/08/31(月) 01:21:30 ] >>428 正規表現メモ www.kt.rim.or.jp/~kbk/regex/regex.html#POSITIVELOOKAHEAD 「よくある勘違い」
434 名前:デフォルトの名無しさん mailto:sage [2009/08/31(月) 01:32:27 ] ツッコまれること前提で片手間に書いたのに、やっとツッコんでもらえたw /全然(?!.*?(?:ない|なく|なかった|ません)).*?。/ これでどうだ
435 名前:デフォルトの名無しさん mailto:sage [2009/08/31(月) 02:32:07 ] キュウリを突っ込んで欲しいのか? 魚肉ソーセージを突っ込んで欲しいのか?
436 名前:デフォルトの名無しさん mailto:sage [2009/09/01(火) 10:08:55 ] 全然((?!ない|なく|なかった|ません).)*。
437 名前:デフォルトの名無しさん mailto:sage [2009/09/01(火) 21:27:07 ] >>434 >>436 検索してみたら「全然参考にならないんだ、悪いけど。」にマッチしてる。
438 名前:デフォルトの名無しさん mailto:sage [2009/09/01(火) 22:13:55 ] >>437 Perl と Ruby で試してマッチしないんだけど、どんな正規表現エンジン使ってるの?
439 名前:デフォルトの名無しさん mailto:sage [2009/09/01(火) 22:25:44 ] >>437 お前のレス全然参考にならないんだ、悪いけど。
440 名前:デフォルトの名無しさん mailto:sage [2009/09/01(火) 22:30:23 ] >>438 これ。内部エンジンがどうなっているのかよく分かんない。 ttp://www.kotonoha.gr.jp/cgi-bin//search_form.cgi?viaTopPage=1
441 名前:デフォルトの名無しさん mailto:sage [2009/09/01(火) 23:00:44 ] >>427 = >>440 なのか? >>1 をよく読んで出直せ。
442 名前:441 mailto:sage [2009/09/01(火) 23:09:11 ] まあいいや。 >>427 = >>440 と仮定して。 >>440 のをちょっと試してみたけど、 「前後文脈の指定について」の後文脈の例を見るとわかるように、 「検索文字列」の直後のパターンを指定したい場合は、 文字列先頭のアンカを指定する必要があるみたい。 例えば >>436 のを参考にこんなんでいけるかと。 ^((?!ない|なく|なかった|ません).)*。
443 名前:デフォルトの名無しさん mailto:sage [2009/09/01(火) 23:16:52 ] >>441 ごめんなさい。 >>442 おおお、できた。ありがとう。
444 名前:デフォルトの名無しさん [2009/09/04(金) 13:45:50 ] お時間あればよろしくおねがいします ●正規表現の使用環境 .NET Framework 2.0 ●検索か置換か? 置き換え ●説明 ランダムな文字列内に繰り返す言葉を1つにまとめたい ●対象データ abcdddddde こんにちちちちちちわ !+++**! ●希望する結果 abcde こんにちわ !+*!
445 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 14:20:02 ] >>444 s/(.+?)\1+/$1/g ドトネトだとこんな感じか Regex re = new Regex( @"(.+?)\1+" ); Console.WriteLine( re.Replace( "abcdddddde", "$1" ) );
446 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 14:23:20 ] s/(.)\1+/$1/g でもいいな
447 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 23:46:35 ] >>445 ありがとうございます、なるほど・・・ PHPだけで他の言語や正規表現はサッパリで、助かりました
448 名前:デフォルトの名無しさん [2009/09/04(金) 23:55:59 ] Javaでもやれ
449 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 00:56:44 ] 20行で書けるからな
450 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 09:38:25 ] PHPでも20行で書けるな
451 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 15:33:57 ] ●正規表現の使用環境 PCRE7 ●検索か置換か? 検索 ●説明 HTMLマーク付けされていないURLを探したい ●対象データ example1.com/ <a href="example2.com/ ">example2.com/</a> example3.com/ ●希望する結果 example1.com/ example3.com/
452 名前:デフォルトの名無しさん mailto:sage [2009/09/12(土) 19:55:22 ] 「けちなマッチング」ってもっと他の言い方ないの?
453 名前:デフォルトの名無しさん mailto:sage [2009/09/12(土) 20:54:51 ] けちなマッチング、という言い方は知らないのだけど、 非欲張りな繰り返しのこと? それとも逆に強欲な繰り返しのこと?
454 名前:デフォルトの名無しさん mailto:sage [2009/09/15(火) 23:24:21 ] 最短一致とかいろいろな言い方あるね
455 名前:デフォルトの名無しさん [2009/09/17(木) 13:12:34 ] ●正規表現の使用環境 VBScript ●検索か置換か? 置換 ●説明 ソースコードの関数を置換したい ●対象データ 1 FuncA(1,2,3) 2 FuncA(1,FuncB(2,3),4) 3 FuncA(1,"string2,3",4) 4 FuncA(1,2,3):FuncD(1,2,3) ●希望する結果 1 FuncC(3,1,2) 2 FuncC(4,1,FuncB(2,3)) 3 FuncC(4,1"string2,3") 4 FuncC(3,1,2):FuncD(1,2,3) とりあえず対になる()の特定方法が知りたいです・・
456 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 19:10:43 ] 正規表現以前に、単語単位でFuncA->FuncCを置換したら済む話じゃね?
457 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 19:59:50 ] 関数の仕様というか引数の順番も変更になってるっぽいからダメそう。 カッコのネストの深さを限定すればあるいは。
458 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 20:26:50 ] >>455 ネスト数を限定すれば書けるが汚くなるのは言うまでもない。
459 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 09:51:28 ] perlの正規表現の(?PARNO)みたいに再帰を書けるように 拡張されたのを使えばなんとかなるけどあれを正規表現と 呼んでいいのか激しく疑問w さらに全く正規表現じゃなくなるが頭に #define FuncA(x,y,z) FuncD(z,x,y) を追加してcppに食わせれば一発なんだけどね。 % cat hoge #define FuncA(x,y,z) FuncC(z,x,y) 1 FuncA(1,2,3) 2 FuncA(1,FuncB(2,3),4) 3 FuncA(1,"string2,3",4) 4 FuncA(1,2,3):FuncD(1,2,3) % cpp hoge # 1 "hoge" # 1 "<built-in>" # 1 "<command-line>" # 1 "hoge" 1 FuncC(3,1,2) 2 FuncC(4,1,FuncB(2,3)) 3 FuncC(4,1,"string2,3") 4 FuncC(3,1,2):FuncD(1,2,3)
460 名前:デフォルトの名無しさん [2009/09/18(金) 13:14:55 ] スルーされにくい質問のテンプレと例 ●正規表現の使用環境 5.10.0 ●検索か置換か? 置換 ●説明 先頭の<と行末の>を削除したい ●対象データ <XXXXXX> XXXXXX> <XXXXXX ●希望する結果 XXXXXX
461 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 13:16:46 ] スルー力を試されているのか?
462 名前:デフォルトの名無しさん [2009/09/18(金) 13:24:16 ] >461 な、なぜだ…このテンプレつかてるのに。 あ。パールです…
463 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 13:31:32 ] > ●正規表現の使用環境 > 5.10.0 言いたいことはわからんでもないが。
464 名前:デフォルトの名無しさん [2009/09/18(金) 13:34:45 ] >463 Linux 2.6.30.5-43.local.fc11.i686.PAE #1 SMP Wed Sep 16 16:46:32 JST 2009 i686 i686 i386 GNU/Linux あら勘違いしたかな?これでだいじょぶですか?
465 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 13:39:08 ] >>460 しむらー、一行目 /^<?(.*?)>?$/ Perlでは実行確認してないけど多分大丈夫だろ
466 名前:デフォルトの名無しさん [2009/09/18(金) 13:43:34 ] >465 うわーありがとう。 もーちょっとだったのに汗 助かりました。
467 名前:455 mailto:sage [2009/09/18(金) 14:49:49 ] 簡単には出来なそうなんですね。わかりました。 対になる()や[]の一致書式の方はありますか? これが出来れば結構いろいろ応用がききそうなんですが。
468 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 15:32:46 ] 厳密な意味での正規表現では無理なことの代表的なものが、括弧の対応。 最近の拡張ではできるものもあるけど、やりかたがそれぞれなので、 一般的に説明できない。 つーかその例のようなのは>>459 の言うようにcpp使うのが楽だな。
469 名前:デフォルトの名無しさん [2009/09/18(金) 18:48:14 ] 「正規」表現って言い方ってどうよ? 正規分布 normal distribution 正規表現 regular expression
470 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 19:22:31 ] 別に? 混乱するからどうしてもと言うなら 統計学のnormalを「標準」とでも脳内変換しとけ
471 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 20:03:18 ] >>469 何が問題なの? 異なる言語で単語が一対一に写像するなんてことは有り得ないんで、 その程度の不整合でいちいち悩んでると人生辛くなるよ。
472 名前:455 mailto:sage [2009/09/18(金) 22:35:18 ] 括弧処理には向いていないのでしたか。 それがわかっただけでも満足です。ありがとう。
473 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 23:05:45 ] >>181 これ読んでみたけど本当に良い本だった。世界的に認められてるだけのことはある。 数学丸出しなのでかなり難しい内容だけど、オライリーのフクロウ本を一通り読んで DFAとNFAの違いを知りたいというモチベーションがあれば読み進められるかも。
474 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 23:16:09 ] /ヽ(´ー`)人(´∇`)人(`Д´)ノ/
475 名前:デフォルトの名無しさん mailto:sage [2009/09/20(日) 20:12:29 ] カッコの対応を見つけるのって無理なのか・・・。意外だった。
476 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 21:36:59 ] C#の正規表現で悩んでいます。 お時間あればよろしくおねがいします ●正規表現の使用環境 .NET Framework 3.5 ●検索か置換か? 置き換え ●説明 ()の文字を取り除きたい ●対象データ W(ジョーカー) W(ルナ) ●希望する結果 W W string Title = "W(ジョーカー)"; string nobrackets = "<title>(.*)"; Regex re = new Regex(nobrackets); Match m = re.Match(Title); Title = m.Groups["title"].Value; で、nullなんです。アドバイス乞う…。
477 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 22:15:26 ] (1)あんまり弄らなかった方 string Title = "W(ジョーカー)"; string nobrackets = @"(?<title>W)\(.*\)"; Regex re = new Regex(nobrackets); Match m = re.Match(Title); Title = m.Groups["title"].Value; (2)ちょっと弄ってみた方 string Title = "W(ジョーカー)"; string nobrackets = @"\(.*\)"; Regex re = new Regex(nobrackets); Title = re.Replace(Title, ""); >>476 何がしたいのかをもうちょっと良く考えてみるといい
478 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 22:15:26 ] 本当に取り除くだけでいいのなら、こんな感じ? Title = Regex.Replace(Title, @"\(.*?\)", "");
479 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 22:52:03 ] thanks!
480 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 11:17:01 ] C#の正規表現で質問です。 ●正規表現の使用環境 .NET Framework 3.5 ●検索か置換か? 置き換え ●説明 ホームページのすべてのタグを取り除きたい ●対象データ www.asahi.com/shopping/pc_camera/special/TKY200909240072.html ●希望する結果 プレーンテキスト ●現状 '); document.write(''); //--> などいくつかのタグが残る状況です。 ●いま書いている正規表現 Regex regex = new Regex("<.*?>", RegexOptions.Singleline); html = regexRemoveAllTag.Replace(html,"");
481 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 11:35:31 ] >>480 「いま書いている正規表現」の処理の前段で <script>...</script> を削除すると良いと思われ。