[過去ログ] 正規表現道場@2ch Part3 s/煽り|荒らし/あぼーん/g (989レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
846
(1): 04/11/02 12:08 ID:??? AAS
(/\*([^*]|\*+[^/*])*\*+/)
847: 843 04/11/02 15:34 ID:TAdMjWDI(1) AAS
すまそ…激しく誤植だった。
>ereg_replace("(/\*.*\*/)","","/*str1*/str2/*str3*/");
>てやると、先頭の/*と末尾の*/がマッチして全部消えるんだけど
>str2は残して、str1とstr3だけ消す方法ってある?
でした。

>>846サソ
(/\*([^*]|\*+[^/*])*\*+/)で、できました〜
ありがとうございました。
848: あぼーん [あぼーん] あぼーん AAS
あぼーん
849
(2): 04/11/04 12:11 ID:??? AAS
perlでEUC以外の文字列を削除するスクリプトを作成しましたが、
エラーが出てしまい困っています。
削除前には他の文字コードの場合にはEUCに変換しています。

$pattern部分はperlメモさんを参考にしています。

my $str = ' aaaa bbb ccc dddd';
my $pattern = '(?:[\xA9-\xAF\xF5-\xFE][\xA1-\xFE]|' # 9-15,85-94区
. '\x8E[\xE0-\xFE]|' # 半角カタカナ
. '\xA2[\xAF-\xB9\xC2-\xC9\xD1-\xDB\xEB-\xF1\xFA-\xFD]|' # 2区
. '\xA3[\XA1-\xAF\xBA-\xC0\xDB-\xE0\xFB-\xFE]|' # 3区
. '\xA4[\xF4-\xFE]|' # 4区
省10
850: 04/11/04 12:23 ID:??? AAS
$pattern = " ";
にしないと展開されないんじゃない?
851
(1): 04/11/04 14:35 ID:??? AAS
ヒント: Perlメモには、Perl正規表現雑技へ というリンクがある
852: 849 04/11/04 15:54 ID:??? AAS
>>851
いろいろやってみたけど、上手くいきません・・・
853: 04/11/04 17:48 ID:??? AAS
文字列に「\」という文字を含めたい場合は、
クォートに関係なく「\\」と書かないとダメ。
854: 04/11/05 06:33 ID:??? AAS
>>894
文字クラスに正規表現は使えないのでは。
マッチングパターンを全部逆(EUCコード以外にマッチ)にすれば良いし、
面倒なら、マッチしたEUCコードを取り出すようにすれば良いと思う。

my $pattern = '([\xA9-\xAF\xF5-\xFE][\xA1-\xFE]|' # 9-15,85-94区
...

my $str2;
$str =~ s/$pattern/$str2 .= $1/geo;
print $str2;
855: 849 04/11/05 10:36 ID:??? AAS
みなさんありがとうございます。
まだテストしてないので試してみます。
本当にありがとうございます。
856
(2): 04/11/06 16:21 ID:oGen/DNT(1) AAS
test#・・・・の文字列の#以降の文字を任意の文字に置き換えたいです。
トリップみたいなことです。
splitではできたんですが、replaceではできませんでした。
replaceでやる方法はありますでしょうか?
よろしくお願いします。
857: 04/11/06 16:47 ID:??? AAS
>>856
まずは split でどうやったか示してもらおうか
858: 04/11/09 20:14 ID:??? AAS
>>856に返答がなくてじれったい!

$hoge = "任意の文字";
s/#.*/$hoge/;

でいいよな。
859
(1): 04/11/14 12:57 ID:??? AAS
いま、Perlで文字列検索のCGIプログラムを作っているところなのですが、
やっているうちに挙動が変なところがあるのに気づきました。
エラー部分のみを挙げます。

$a="北関";
$b="夢";

if($a =~ /$b/){
 print 'OK!';
}else{
 print 'NG!';
}
省6
860
(1): 04/11/14 19:14 ID:??? AAS
Perl 5.8以降なら

use encoding "euc-jp";

my $a = "\xcb\xcc\xb4\xd8";
my $b = "\xcc\xb4";
print ($a =~ /$b/ ? 'OK!' : 'NG!');

--
String::Multibyteをインストールするなら

use String::Multibyte;
省10
861: 859 04/11/14 23:27 ID:??? AAS
>>860
ご教授、ありがとうございました!
期待したとおりの効果を得ることが出来ました。
感謝いたします。
862
(3): 04/11/18 15:33 ID:z5HMJmKG(1) AAS
hoge=aaa
hoge=aaa&piyo=bbb
のような文字列の「aaa」だけを抜き出すには
"/hoge=(.+?)/"
       ↑ここになにを入れればいいのでしょうか?
863
(1): 04/11/18 15:39 ID:??? AAS
>>862
"/hoge=(.+?)&/"
864
(1): 862 04/11/18 18:40 ID:??? AAS
>>863
レスありがとうございます。
でも、それだと上の行のaaaが抜き出せないです。
ちなみに、最後に改行コードはついていません。

$a = 'hoge=aaa';
$b = 'hoge=aaa&piyo=bbb';

といった感じのデータです。
865
(1): 04/11/18 19:08 ID:??? AAS
>>864
/hoge=[^&]+/
1-
あと 124 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.024s