Regular Expression(正規表現) Part11
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2013/03/10(日) 20:10:13.34質問する場合は必ず実装言語や処理系ソフトウェア名を示してください。
前スレ
http://toro.2ch.net/test/read.cgi/tech/1340383120/
天ぷら等2以降
0002デフォルトの名無しさん
2013/03/10(日) 20:12:24.81●Regular Expressionの使用環境
Java1.5
●検索か置換か?
検索
●説明
各行の1番目のAまでを検索したい
●対象データ
ABCA
BCAA
CABA
●希望する結果
ABCA
^
BCAA
^^^
CABA
^^
※ ^ はアンダーラインだそうな ^^;
0003デフォルトの名無しさん
2013/03/10(日) 20:13:31.13正規表現メモ
http://www.kt.rim.or.jp/~kbk/regex/regex.html
Perl正規表現雑技
http://www.din.or.jp/~ohzaki/regex.htm
Regular Expression(Riue ちゃんの正規表現講座)
http://www.sixnine.net/regexp/
正規表現パズル
http://www.geocities.jp/oraclesqlpuzzle/regex/
詳説 正規表現
http://www.oreilly.co.jp/books/4873111307/
正規表現プログラミングFAQ
http://capslockabcjp.kitunebi.com/faq.html
JScript 正規表現の概説
http://msdn.microsoft.com/library/ja/script56/html/js56reconIntroductionToRegularExpressions.asp
.NET Framework 正規表現言語要素
http://msdn.microsoft.com/library/ja/cpgenref/html/cpconregularexpressionslanguageelements.asp
【 初心者 】 正規表現 【 入門 】
http://funcchan.blog16.fc2.com/
0004デフォルトの名無しさん
2013/03/10(日) 20:14:54.60[UNIX板] 正規表現
http://pc12.2ch.net/test/read.cgi/unix/1039165754/
[WebProg] 正規表現道場
http://pc11.2ch.net/test/read.cgi/php/1168450843/
◆前スレ
[1] http://pc8.2ch.net/test/read.cgi/tech/1062152374/
[2] http://pc8.2ch.net/test/read.cgi/tech/1131028296/
[3] http://pc11.2ch.net/test/read.cgi/tech/1156413899/
[4] http://pc11.2ch.net/test/read.cgi/tech/1186030400/
[5] http://pc12.2ch.net/test/read.cgi/tech/1212498448/
[6] http://pc12.2ch.net/test/read.cgi/tech/1241537764/
[7] http://hibari.2ch.net/test/read.cgi/tech/1268979408/
[8] http://hibari.2ch.net/test/read.cgi/tech/1301067486/
[9] http://toro.2ch.net/test/read.cgi/tech/1323566370/
0005デフォルトの名無しさん
2013/03/10(日) 20:48:49.56乙
0006デフォルトの名無しさん
2013/03/10(日) 23:29:16.770007デフォルトの名無しさん
2013/03/11(月) 11:04:18.23まあ一応乙
0008デフォルトの名無しさん
2013/03/11(月) 14:32:35.52詳説 正規表現 ←第二版のまま。現行は第三版
http://www.oreilly.co.jp/books/9784873113593/
JScript 正規表現の概説 ←真っ白
.NET Framework 正規表現言語要素 ←真っ白
0009デフォルトの名無しさん
2013/03/11(月) 15:18:19.29http://msdn.microsoft.com/ja-jp/library/28hw3sce%28v=VS.80%29.aspx
http://msdn.microsoft.com/ja-jp/library/az24scfc%28v=vs.80%29.aspx
0010デフォルトの名無しさん
2013/03/11(月) 17:03:43.55無理なら各オクテット切り出して0〜255の範囲にあるか地道にチェックするけど。
0011デフォルトの名無しさん
2013/03/11(月) 17:16:11.170012デフォルトの名無しさん
2013/03/11(月) 17:35:35.250013デフォルトの名無しさん
2013/03/11(月) 18:15:21.72IPアドレスの定義は?それを明示すれば誰かが教えてくれる。
0014デフォルトの名無しさん
2013/03/11(月) 19:16:55.030015デフォルトの名無しさん
2013/03/11(月) 19:35:25.80こんな感じ?
0016デフォルトの名無しさん
2013/03/11(月) 19:40:17.28(?:\d|[1-9]\d|1\d{2}|2[0-3]\d|24\d|25[0-5])\.(?:\d|[1-9]\d|1\d{2}|2[0-3]\d|24\d|25[0-5])\.(?:\d|[1-9]\d|1\d{2}|2[0-3]\d|24\d|25[0-5])\.(?:\d|[1-9]\d|1\d{2}|2[0-3]\d|24\d|25[0-5])
0017デフォルトの名無しさん
2013/03/11(月) 19:56:50.990018デフォルトの名無しさん
2013/03/11(月) 20:04:02.650019デフォルトの名無しさん
2013/03/11(月) 20:06:21.73正規表現よりinet_pton使ったほうが確実。
0020デフォルトの名無しさん
2013/03/11(月) 20:15:33.75>>18とかもそうだけどIPって言っても色々あるからね。
ローカルアドレスを含めるかとか、999がマッチしても実用上困らないので\d{1,3}でいいです、とか。
0021デフォルトの名無しさん
2013/03/11(月) 22:37:27.29Ruby 1.9
●検索か置換か?
検索
●説明
red または blue が含まれてない行を検索したい。
●対象データ
yellow red blue green orange
red green yellow orange
black yellow orange white
green yellow blue orange
●希望する結果
black yellow orange white
0022デフォルトの名無しさん
2013/03/11(月) 22:42:23.870023デフォルトの名無しさん
2013/03/11(月) 22:48:42.80「入門サイト読めば出来るようになるから読んでこい」って
返していけばいいのか、このスレは?
0024デフォルトの名無しさん
2013/03/11(月) 22:53:36.280025デフォルトの名無しさん
2013/03/11(月) 22:55:42.21ググったらわかる。
IPv6とかググったらわかるでしょ?
0026デフォルトの名無しさん
2013/03/11(月) 22:57:17.500027デフォルトの名無しさん
2013/03/11(月) 23:06:25.69Rubyなら素直に!~でいいんじゃ
0028デフォルトの名無しさん
2013/03/12(火) 00:03:09.16本を読まずに人に聞くような奴は向いてない。
0029デフォルトの名無しさん
2013/03/12(火) 00:34:21.310030デフォルトの名無しさん
2013/03/12(火) 01:04:13.770031デフォルトの名無しさん
2013/03/12(火) 02:45:20.910032デフォルトの名無しさん
2013/03/12(火) 16:03:33.320033デフォルトの名無しさん
2013/03/12(火) 22:25:31.310034デフォルトの名無しさん
2013/03/12(火) 23:08:11.690035デフォルトの名無しさん
2013/03/13(水) 18:05:00.530036デフォルトの名無しさん
2013/03/13(水) 18:09:20.000037デフォルトの名無しさん
2013/03/13(水) 18:12:53.22regular expressionなら知ってるけど
0038デフォルトの名無しさん
2013/03/13(水) 18:14:08.56低能は黙ってろ
0039デフォルトの名無しさん
2013/03/13(水) 18:27:27.170040デフォルトの名無しさん
2013/03/13(水) 18:31:44.500041デフォルトの名無しさん
2013/03/13(水) 18:53:22.110042デフォルトの名無しさん
2013/03/13(水) 22:32:18.480043デフォルトの名無しさん
2013/03/14(木) 00:30:10.600044デフォルトの名無しさん
2013/03/16(土) 16:33:27.04底辺プログラマーの人が多いのかな?
0045デフォルトの名無しさん
2013/03/16(土) 16:38:11.49回答してるのほとんど俺1人だけだから
0046デフォルトの名無しさん
2013/03/16(土) 16:49:37.300047デフォルトの名無しさん
2013/03/16(土) 16:50:20.810048デフォルトの名無しさん
2013/03/16(土) 17:00:06.230049デフォルトの名無しさん
2013/03/16(土) 17:05:44.45正規表現がそんな難しいものだと思ってんの?
0050デフォルトの名無しさん
2013/03/16(土) 17:11:00.84正規表現がそんな簡単なものだと思ってんなら帰れ。
0051デフォルトの名無しさん
2013/03/16(土) 17:14:02.450052デフォルトの名無しさん
2013/03/16(土) 17:14:12.28そしてそれに回答してるお前はなんなの?
0053デフォルトの名無しさん
2013/03/16(土) 17:15:41.69Ruby 1.9
●検索か置換か?
検索
●説明
red または blue が含まれてない行を検索したい。
●対象データ
yellow red blue green orange
red green yellow orange
black yellow orange white
green yellow blue orange
●希望する結果
black yellow orange white
0054デフォルトの名無しさん
2013/03/16(土) 17:16:13.030055デフォルトの名無しさん
2013/03/16(土) 17:16:44.040056デフォルトの名無しさん
2013/03/16(土) 17:17:28.300057デフォルトの名無しさん
2013/03/16(土) 17:37:37.35はい
^(?!.*\bred\b)(?!.*\bblue\b).*$
0058デフォルトの名無しさん
2013/03/16(土) 17:54:41.980059デフォルトの名無しさん
2013/03/16(土) 17:59:28.640060デフォルトの名無しさん
2013/03/16(土) 18:00:49.360061デフォルトの名無しさん
2013/03/16(土) 18:02:30.81無能共が吠えてやがるw
0062デフォルトの名無しさん
2013/03/16(土) 18:37:01.870063デフォルトの名無しさん
2013/03/16(土) 18:37:45.210064デフォルトの名無しさん
2013/03/16(土) 18:37:57.510065デフォルトの名無しさん
2013/03/16(土) 18:43:07.860066デフォルトの名無しさん
2013/03/16(土) 18:46:12.360067デフォルトの名無しさん
2013/03/16(土) 18:49:04.550068デフォルトの名無しさん
2013/03/16(土) 18:51:13.65語彙が貧弱すぎてワロタw
0069デフォルトの名無しさん
2013/03/16(土) 18:52:22.320070デフォルトの名無しさん
2013/03/16(土) 18:53:59.050071デフォルトの名無しさん
2013/03/16(土) 18:59:07.820072デフォルトの名無しさん
2013/03/16(土) 18:59:57.080073デフォルトの名無しさん
2013/03/16(土) 19:00:30.440074デフォルトの名無しさん
2013/03/16(土) 19:34:29.840075デフォルトの名無しさん
2013/03/16(土) 19:35:04.730076デフォルトの名無しさん
2013/03/16(土) 19:37:10.47え、それマジで言ってる? え!?マジ??うわキモッ
0077デフォルトの名無しさん
2013/03/16(土) 19:54:35.220078デフォルトの名無しさん
2013/03/16(土) 20:07:46.45一応違うんだぞ。
0079デフォルトの名無しさん
2013/03/16(土) 20:08:06.370080デフォルトの名無しさん
2013/03/16(土) 20:10:34.920081デフォルトの名無しさん
2013/03/16(土) 20:11:00.200082デフォルトの名無しさん
2013/03/16(土) 20:33:48.950083デフォルトの名無しさん
2013/03/16(土) 21:09:33.130084デフォルトの名無しさん
2013/03/16(土) 21:24:58.370085デフォルトの名無しさん
2013/03/16(土) 21:27:46.380086デフォルトの名無しさん
2013/03/16(土) 21:30:08.040087デフォルトの名無しさん
2013/03/16(土) 21:31:45.290088デフォルトの名無しさん
2013/03/16(土) 21:54:06.780089デフォルトの名無しさん
2013/03/16(土) 21:54:50.140090デフォルトの名無しさん
2013/03/16(土) 21:55:27.370091デフォルトの名無しさん
2013/03/16(土) 22:07:29.85やっぱ俺じゃねーか
俺だよデンデだよ
0092デフォルトの名無しさん
2013/03/16(土) 22:09:23.97うるさいおまえなんかでんでんだ
0093デフォルトの名無しさん
2013/03/16(土) 23:58:59.600094デフォルトの名無しさん
2013/03/17(日) 02:54:43.610095デフォルトの名無しさん
2013/03/18(月) 04:57:36.950096デフォルトの名無しさん
2013/03/18(月) 07:06:51.560097デフォルトの名無しさん
2013/03/18(月) 08:24:22.900098デフォルトの名無しさん
2013/03/18(月) 08:28:26.340099デフォルトの名無しさん
2013/03/18(月) 09:40:12.590100デフォルトの名無しさん
2013/03/18(月) 10:11:36.92パチンコはNGにしない
たとえばの話なんですが2chブラウザなどでNGワードを指定する場合どう書けばいいですか
0101デフォルトの名無しさん
2013/03/18(月) 11:22:59.200102デフォルトの名無しさん
2013/03/18(月) 11:23:31.420103デフォルトの名無しさん
2013/03/18(月) 11:47:51.44バカバカしいはOKでバカはNGみたいなのは正規表現では無理
0104デフォルトの名無しさん
2013/03/18(月) 12:41:55.77(?<!パ)チンコ
(^|[^パ])チンコ
>>103
バカ(?!バカしい)
0105デフォルトの名無しさん
2013/03/18(月) 12:53:49.030106デフォルトの名無しさん
2013/03/18(月) 14:24:55.360107デフォルトの名無しさん
2013/03/18(月) 15:15:43.140108デフォルトの名無しさん
2013/03/18(月) 15:43:40.87これだとその一手にしか使えないな
バカげてる・バカなの?などいちいち追加しないといけない
逆転の発想でチンコとバカは完全一致にするとか
0109デフォルトの名無しさん
2013/03/18(月) 16:00:33.000110デフォルトの名無しさん
2013/03/18(月) 16:15:14.040111デフォルトの名無しさん
2013/03/18(月) 16:32:50.080112デフォルトの名無しさん
2013/03/18(月) 16:46:17.770113デフォルトの名無しさん
2013/03/18(月) 22:42:48.94どうして欲しいの?
0114デフォルトの名無しさん
2013/03/18(月) 23:35:33.79https://www.google.com/search?q=%E3%83%8B%E3%83%A5%E3%83%BC%E3%83%8F%E3%83%BC%E3%83%95%E3%80%80%E5%B0%84%E7%B2%BE
0115デフォルトの名無しさん
2013/03/18(月) 23:38:47.350116デフォルトの名無しさん
2013/03/21(木) 10:07:22.09{
color: #008000;
}
font-weight: normal;
color: #008000;
0117デフォルトの名無しさん
2013/03/21(木) 18:51:06.76aaaは固定ではなく、長さや文字も任意です。
文字数分スペースに置き換える必要があります。
変換前
/*aaa*/
変換後
/* */
0118デフォルトの名無しさん
2013/03/21(木) 18:57:23.280119デフォルトの名無しさん
2013/03/22(金) 10:24:52.97質問の意味わかってないよね?
これは正規表現じゃできないでしょ
コメント以外は変換しちゃならんのだろ?
// hogehoge ←これは変換
/* hogehoge */ hogehoge ←コメント内のhogehogeのみ変換
hogehoge ←これは変換しない
/*
hogehoge ←これは変換
*/
こんなもん正規表現でできるかよ
0120デフォルトの名無しさん
2013/03/22(金) 10:46:37.73使用環境次第だな。
複数行をサポートするかどうか。
使用環境次第で正規表現の適用範囲も変わる。
0121デフォルトの名無しさん
2013/03/22(金) 10:54:04.11問題にするべきは入れ子の場合だと思うよ。
0122デフォルトの名無しさん
2013/03/22(金) 10:55:35.780123デフォルトの名無しさん
2013/03/22(金) 11:19:06.11複数行以前に、おれにはしたが対応できない…
先読み後読み駆使して対応できるの?
/* hogehoge */ hogehoge
0124デフォルトの名無しさん
2013/03/22(金) 12:03:43.35>>117の要求に行コメントなんてどこにもないだろ
第三者なら黙ってろよ
0125デフォルトの名無しさん
2013/03/22(金) 12:22:03.83>>119はhogeとか使ってるキチガイなんだからまともに受けとるな
正常な精神構造した人間ならhogeなんか使わないよ
0126デフォルトの名無しさん
2013/03/22(金) 12:35:21.97環境は分からんけど余裕と思う
2時間も勉強すればいけるんじゃね?
それくらいなら正規表現使わずにC言語でゴリゴリ書いても余裕なレベル
0127デフォルトの名無しさん
2013/03/22(金) 12:41:27.780128デフォルトの名無しさん
2013/03/22(金) 13:57:31.37可能だから可能と言ってるんですよ。あなたには出来ないだけです。
0129デフォルトの名無しさん
2013/03/22(金) 13:59:42.41おまえのその感覚が異常
0130デフォルトの名無しさん
2013/03/22(金) 14:06:20.39でggrks
0131デフォルトの名無しさん
2013/03/22(金) 14:11:27.150132デフォルトの名無しさん
2013/03/22(金) 14:27:22.72どちらが最高の人生にするために有用ですか?
0133デフォルトの名無しさん
2013/03/22(金) 15:00:46.170134デフォルトの名無しさん
2013/03/22(金) 15:00:56.520135デフォルトの名無しさん
2013/03/22(金) 15:01:35.800136デフォルトの名無しさん
2013/03/22(金) 15:03:25.470137デフォルトの名無しさん
2013/03/22(金) 15:05:48.330138デフォルトの名無しさん
2013/03/22(金) 15:07:40.360139デフォルトの名無しさん
2013/03/22(金) 15:22:32.81ちゃんと解答しないならそんな無意味な書き込みするなよ
0140デフォルトの名無しさん
2013/03/22(金) 15:32:52.68下のコメント内のhogehogeをスペースに置き換える正規表現を教えて下さい。
/* hogehoge */ hogehoge
0141デフォルトの名無しさん
2013/03/22(金) 15:42:22.70(/\*)(?!\*/).(?=.*\*/)|\G(?!^)(?!\*/).
置換
$1半角スペース
これが動かない環境なら氏らね。テンプレ読まずに環境を書かないおまえが悪い。
言っとくけどこのスレには俺並みに正規表現に詳しい奴はいないからな。土下座しても他の奴には作れない。
0142デフォルトの名無しさん
2013/03/22(金) 16:08:05.78http://toro.2ch.net/test/read.cgi/tech/1363769640/
どうすんのコレ・・
0143デフォルトの名無しさん
2013/03/22(金) 18:47:05.61>こんなもん正規表現でできるかよ
>こんなもん正規表現でできるかよ
>こんなもん正規表現でできるかよ
0144デフォルトの名無しさん
2013/03/22(金) 19:00:57.10普通に正規表現を使ってるレベルなら、できないと考えてもおかしくはない。
0145デフォルトの名無しさん
2013/03/22(金) 19:25:08.300146デフォルトの名無しさん
2013/03/22(金) 19:34:00.72>>119の例は>>141じゃ出来ないよ
0147デフォルトの名無しさん
2013/03/22(金) 19:40:12.10簡単だけど誤認する可能性のある奴のこともあれば、ややこしいけど正しく判定する奴のこともあるな。
0148デフォルトの名無しさん
2013/03/22(金) 20:54:21.47え?何が出来ないって?出来てる俺に説明して。
0149デフォルトの名無しさん
2013/03/22(金) 21:05:43.24perl -i~ -CSDL -pe 'BEGIN{$/=undef}s{(?<=/\*)(.*?)(?=\*/)}{$1=~s/\S/ /gr}gse' PROG.c
でいいんじゃないの。
0150デフォルトの名無しさん
2013/03/22(金) 21:08:57.930151デフォルトの名無しさん
2013/03/22(金) 21:09:17.980152デフォルトの名無しさん
2013/03/22(金) 21:14:17.910153デフォルトの名無しさん
2013/03/22(金) 21:36:30.62ふはははははははははははははははははははははは!
0154デフォルトの名無しさん
2013/03/23(土) 00:11:42.50それ当たり前じゃん・・・
0155デフォルトの名無しさん
2013/03/23(土) 19:12:06.34strprtk、strstr
この辺り駆使するだけでいけそうだが
0156デフォルトの名無しさん
2013/03/24(日) 07:33:17.31きついって、そういう意味なの?
0157デフォルトの名無しさん
2013/03/24(日) 18:40:08.201日潰せば正規表現ライブラリくらい作れるだろ。
0158デフォルトの名無しさん
2013/03/24(日) 18:45:59.30分かったからまずは代入から勉強したまえ。
0159デフォルトの名無しさん
2013/03/24(日) 18:56:09.650160デフォルトの名無しさん
2013/03/25(月) 18:14:49.200161デフォルトの名無しさん
2013/03/25(月) 19:58:12.800162デフォルトの名無しさん
2013/03/25(月) 20:27:50.49標準ライブラリだけでやらないと
フェアじゃないね。
0163デフォルトの名無しさん
2013/03/25(月) 20:31:28.260164デフォルトの名無しさん
2013/03/25(月) 20:43:45.53何を使うかだ。
0165デフォルトの名無しさん
2013/03/26(火) 05:34:07.260166デフォルトの名無しさん
2013/03/26(火) 09:10:07.190167デフォルトの名無しさん
2013/03/27(水) 04:00:15.400168デフォルトの名無しさん
2013/03/27(水) 08:35:11.18無慈悲な懲罰
無慈悲に撃滅
無慈悲に粉砕
無慈悲な報復
無慈悲な報復打撃
無慈悲な対応措置
無慈悲な軍事的措置
無慈悲な軍事的打撃
全般的な戦線で無慈悲に対応
容赦ない攻撃
容赦なく撃墜
容赦なく処罰
容赦ない軍事的措置
全般的前線での容赦ない粉砕
際限の無い報復打撃
より恐ろしい懲罰
全戦線での全面的軍事打撃行動
再侵略戦争の砲声
報復聖戦
未公開で最先端の世界的な打撃力量と安全保衛手段がある
この世の誰も体験したことのない最も厳しい懲罰
先軍の銃でことごとく一掃
本当の戦争を見せる
絶対に無事ではなくなる
無慈悲な物理的な力を行使
無慈悲な軍事的対応打撃
無慈悲な軍事攻撃
無慈悲な電撃作戦
無慈悲な稲妻 ← new!!
0169デフォルトの名無しさん
2013/03/27(水) 17:33:02.150170デフォルトの名無しさん
2013/03/27(水) 18:00:06.740171デフォルトの名無しさん
2013/03/28(木) 13:33:56.65ああいう階層構造ってRegex向いてないだろ。
0172デフォルトの名無しさん
2013/03/29(金) 03:01:26.58PHP5
●検索か置換か?
置換
●説明
Javaのコメント・文字列を抽出してタグで囲みたいです。
/**/, "", '' が入れ子になってる場合に外側だけ適応するのができません
失敗例 <ダブル>"これは<シングル>'ペン'</シングル>です"</ダブル>
成功例 <ダブル>"これは'ペン'です"</ダブル>
●対象データ()
/* "hello" 'world' */
String var="これは'ペン'です";
String apos='apopo "/* moge';
●希望する結果
<コメント>/* "hello" 'world' */</コメント>
String var=<ダブル>"これは'ペン'です"</ダブル>;
String apos=<シングル>'apopo "/* moge'</シングル>;
0173デフォルトの名無しさん
2013/03/29(金) 03:50:07.53" 〜 "
' 〜 '
の3つを普通に置換すればいいだけでしょ。入れ子ですらないし。
0174172
2013/03/29(金) 03:53:58.61一端 | で一時的なタグに置換したのちに、もう一度置換してできました。
一時的なタグ
/(\/\*.*?\*\/)|(".*?")|('.*?')/
"<ブロック>"."$0"."</ブロック>"
もう一度置換(/**/ , '' に分ける)
/(<ブロック>\/\*.*?\*\/</ブロック>)/ 置換=> <コメント>...</コメント>
/(<ブロック>&apos.*?&apos/</ブロック>)/ 置換=> <シングルクォート>...</シングルクォート>
0176デフォルトの名無しさん
2013/03/29(金) 04:02:49.48おかしくならないぞ?最初に /* " */ が置換されるからな。
・・というか最初に↑が置換されるような書き方をすればいいんだがそれが出来てなかったんだろう。
0177172
2013/03/29(金) 04:22:58.58なぜダメだったのかよくわかりませんね。
<コメント>/* <ダブル>" */</コメント> "</ダブル> "
0178デフォルトの名無しさん
2013/03/29(金) 04:25:54.511つの正規表現で3つの置換をすれば問題は起きない。
そうすれば置換済みの文字列は消費されて検索対象にならないからね。
0179172
2013/03/29(金) 04:31:10.10「/*」の次の位置から次の検索・置換が開始されているからだと思いますが、
何か記号が足りないとか?
0180172
2013/03/29(金) 04:44:26.74これで上手くいかなかったのですよ。こちらでケアミスしている可能性も有りますけど。
preg_filter($string, { "/**/", "@", "" }, {"<html>/**/</html>", "<xml>@</xml>", ""} );
0181デフォルトの名無しさん
2013/03/29(金) 05:10:04.37ダブルの中に一個だけダブルが出てきたり、
ダブルの中に何重にもダブルの囲みが出てきたり、
上記が複合したりと。大丈夫なのかな。
0183デフォルトの名無しさん
2013/03/29(金) 07:21:53.31解釈の問題だけど、
abc/*def*/ghi*/jk
のような場合、どう考えるのか。
0184デフォルトの名無しさん
2013/03/29(金) 11:25:09.95"foo\"bar"とかもきっと気にしていないさそう。(そこまでやる必要はないとかで)
ガチでやるなら既存のシンタックスハイライト機能とかを参考にするといいんじゃないかな
0185デフォルトの名無しさん
2013/03/29(金) 13:08:31.77フラグで中か外かを管理して1文字ずつ判定していけばいい。
正規表現でやる場合は正規表現メモに書いてある(?{ code })を使えば出来る。
0186デフォルトの名無しさん
2013/03/29(金) 13:25:10.70結果は
abc<コメント>/*def*/</コメント>ghi*/jk
でなくてはならないだろう。
0187デフォルトの名無しさん
2013/03/29(金) 13:29:18.83こういう意味の入れ子じゃねーだろw国語力付けろw
0188デフォルトの名無しさん
2013/03/29(金) 13:35:36.42123456789
正規表現
1*4
2*5
3*6
↑3つ別々にマッチングさせると3つともマッチするのでマズい。
0189デフォルトの名無しさん
2013/03/29(金) 13:39:47.201*4|2*5|3*6
これなら干渉しあうことは無くなる。この場合は1*4のみマッチ。
置換時に出力するものは(?{ code })を使って変換する。
0190デフォルトの名無しさん
2013/03/29(金) 14:54:43.54だから、入れ子が成立していない時は、前側で閉じる。
0191デフォルトの名無しさん
2013/03/29(金) 14:54:51.36> 入れ子になってる場合に外側だけ適応
これ、優先度は固定じゃないと思うよ
例にはないけど、下記両方を満たしたいと思っていると予想するよ
String var="これは'ペン'です";
→String var=<ダブル>"これは'ペン'です"</ダブル>;
String var='これは"ペン"です';
→String var=<シングル>'これは"ペン"です'</シングル>;
あと、/**/を混ぜた場合も同様に。
0192デフォルトの名無しさん
2013/03/29(金) 15:11:18.03優先度って分岐の最初の1.*4が優先されるって意味?
そうなら優先度は3つとも同じだよ。順番を変えても結果は同じ。
0193デフォルトの名無しさん
2013/03/29(金) 15:15:15.11にしてもマッチするのは1*4って意味ね。つかピリオド忘れてた。*じゃなくて.*ね。
0194172
2013/03/29(金) 17:03:28.86これだとダメだった。
/".*?[^(¥)]"/
0195デフォルトの名無しさん
2013/03/29(金) 17:14:13.580196デフォルトの名無しさん
2013/03/29(金) 17:15:00.300197デフォルトの名無しさん
2013/03/29(金) 17:37:58.620198172
2013/03/29(金) 17:52:02.00Javaコンパイラでエラーにならないソースを修飾する分には完成しそう。
対象:String foo = "\"";
正規表現:".*?[^\\\]"
0199デフォルトの名無しさん
2013/03/29(金) 19:58:35.06というか丸投げしに来るのはやめてくれ。
0200デフォルトの名無しさん
2013/03/29(金) 20:04:30.220201デフォルトの名無しさん
2013/03/29(金) 20:09:45.91そりゃそうでしたごめんなさい。
>>194
その辺、考慮するんだ。てっきりしないものとばかり。
/*
var = "コメントを閉じるときには */ と書きます";
*/
0202172
2013/03/29(金) 20:54:59.66その場合JavaとかPHPだとコンパイラがエラーを出す構文だから
1つ目の*/でブロックを閉じちゃって良いのですよ。
<コメント>/*
var = "コメントを閉じるときには */</コメント> と書きます";
*/
0203デフォルトの名無しさん
2013/03/29(金) 21:14:25.580204デフォルトの名無しさん
2013/03/29(金) 21:36:20.410205デフォルトの名無しさん
2013/03/29(金) 23:36:06.69まだ出来ないというのなら勉強して出直してきなさいという感じ。
0206172
2013/03/30(土) 00:13:07.870207デフォルトの名無しさん
2013/03/30(土) 00:29:32.790208デフォルトの名無しさん
2013/03/30(土) 00:48:40.65こうしただけで詰むけど解決おめでとう。
0209デフォルトの名無しさん
2013/03/30(土) 01:50:33.150210デフォルトの名無しさん
2013/03/30(土) 01:52:17.17お前もやっていいんだぜ。
っていうか、IDがでるほうがやりやすいんだがw
俺みたいに回線とかプロバイダとか
レンタルサーバー(プロキシとして使える)とか
複数持っていると同時に複数のIDを使えるから
違う人だところっと騙される。
0211デフォルトの名無しさん
2013/03/30(土) 12:06:38.76そうそう、強制IDの板だと妄想で自演認定する奴がかなり減るから自演もスムーズに進む
単発IDだとまだ妄想厨が湧くけど複数IDだと全然湧かないんだよね
どんだけID信仰してるんだよw
逆に素人はいちいちID変えないから板内なら0時まで粘着し放題
自動巡回でそのID探すのに正規表現が使える
というわけで俺もID導入賛成だ
0212デフォルトの名無しさん
2013/03/30(土) 12:08:52.520213デフォルトの名無しさん
2013/03/30(土) 12:21:40.87使わなくてもやろうと思えばできるって話を持ち出すなら正規表現そのものが不要(ry
0214デフォルトの名無しさん
2013/03/30(土) 14:55:21.08このスレも不要
0215デフォルトの名無しさん
2013/03/30(土) 16:12:27.790216デフォルトの名無しさん
2013/03/30(土) 23:21:18.250217デフォルトの名無しさん
2013/03/30(土) 23:27:19.080218デフォルトの名無しさん
2013/03/30(土) 23:31:08.620219デフォルトの名無しさん
2013/03/30(土) 23:33:01.820220デフォルトの名無しさん
2013/03/30(土) 23:35:01.480221デフォルトの名無しさん
2013/03/30(土) 23:37:26.78B: どこが?
A: (.Y.)
0222デフォルトの名無しさん
2013/03/30(土) 23:38:59.05チンカスは黙ってろ
0223デフォルトの名無しさん
2013/03/30(土) 23:42:58.860224デフォルトの名無しさん
2013/03/30(土) 23:48:29.440225デフォルトの名無しさん
2013/03/30(土) 23:54:23.540226デフォルトの名無しさん
2013/03/31(日) 00:04:07.38マゾか?マゾなのか?
肛門拡張して欲しいのか?
0227デフォルトの名無しさん
2013/03/31(日) 02:50:21.74> 自動巡回でそのID探すのに正規表現が使える
のことを言ってるんじゃないの?
>>213がどう考えてそういったかは分からんが
0228デフォルトの名無しさん
2013/04/02(火) 00:11:30.750229デフォルトの名無しさん
2013/04/04(木) 10:07:12.05例
222 デフォルトの名無しさん [sage] 2013/03/30(土) 23:38:59.05
>>220
チンカスは黙ってろ
224 デフォルトの名無しさん [sage] 2013/03/30(土) 23:48:29.44
1919072
225 デフォルトの名無しさん [sage] 2013/03/30(土) 23:54:23.54
しこるかねるか
デフォルトの名無しさん が含まれる行のみ削除する
0230デフォルトの名無しさん
2013/04/04(木) 10:19:53.870231デフォルトの名無しさん
2013/04/04(木) 10:20:49.25正規表現サンプル(ある文字が含まれる行を削除する)
http://hodade.adam.ne.jp/seiki/page.php?r_arumoji_gyo_sakujo
0232デフォルトの名無しさん
2013/04/04(木) 19:43:08.36環境書いてないからその辺も含めてなのかな。
:v/デフォルトの名無しさん/d
でいいとおもうよ
0233デフォルトの名無しさん
2013/04/05(金) 13:52:32.12秀丸 8.2.1
●検索か置換か?
置換
●説明
二つ目のTab以降を削除したいです。
●対象データ
100 こくご えいご 100 20 固定
共通 シャカイ スウガク 100 10 ランダム
(データの間の空白は全部Tabです)
●希望する結果
100 こくご
共通 すうがく
下の正規表現で試してみました。
^(.*)?\t(.*)?\t[あ-ん ア-ン].*
\1\t\2
(.*)?\t(.*)?\tでTabまでの最短マッチ(のつもり)二つで、えいご、スウガクまでを指定しています。
3つめのカラムの1文字目がひらがなとカタカナなので、[あ-ん ア-ン]で指定しているのですが、
後ろの"ランダム"がマッチしてしまい、2行目が下のような結果になってしまいます。
100 こくご
共通 シャカイ スウガク 100 10
やり方教えて貰えればうれしいです。
よろしくお願いします。
0234デフォルトの名無しさん
2013/04/05(金) 18:32:01.77スウガクがすうがくにかわるわけがないがそれもおいておいて
最短マッチを指定するのは量指定子の直後な
以下は余談だが多分鬼車だろうから
平仮名: \p{Hiragana}
片仮名: \p{Katakana}
が使える
0235デフォルトの名無しさん
2013/04/05(金) 18:33:44.55・対象データのタブ文字が書き込み時に消えててスペースとタブが区別できない・・・混在してるなら、だけど
・「共通 シャカイ スウガク」のデータは「〜以降削除」では「共通 すうがく」どころか「共通 スウガク」にもならない
・最短マッチの量指定子は「*?」であって「(××*)?」では無いと思うし、マニュアル見ても「*?」になってるぽい
N個目のカラムとかにマッチさせたいなら、セパレータを含まない文字集合を使うべきだと思う
「^([^\t\r\n]*\t[^\t\r\n]*)\t.*$」→「\1」とかだと思うけど、秀丸持ってないし知らん(なら答えるな?)
>>234
HmJre.dllというJRE32.DLLのカスタム版らしい
0236デフォルトの名無しさん
2013/04/05(金) 18:48:40.18^([^\t]*\t[^\t]*)\t.*?$
\1
0237デフォルトの名無しさん
2013/04/05(金) 19:14:49.74みなさんレスありがとうございます。
私の記載間違いで皆さんを混乱させてしまい大変申し訳ありませんでした!正しくは下記でした。。
●希望する結果
100 こくご
共通 シャカイ
>>234
鬼車のエンジンだとそういったことが出来るのですね、勉強になりました。
>>235,236
お二方のやり方で無事出来ました。
無事出来てうれしいのですが、回答例の正規表現の動きがよく分からないので、( ^([^\tが何を表してるかとかその時点でちんぷんかんぷんで。。
正規表現の本さっき注文してみました。これで勉強して皆さん回答例と照らし合わせて動きを勉強してみようと思います。
最短マッチについても間違っていたようで勉強になりました。
どうもありがとうございます。
0238デフォルトの名無しさん
2013/04/05(金) 19:16:46.47バイバ
0239デフォルトの名無しさん
2013/04/05(金) 19:51:43.63ttp://homepage3.nifty.com/_htom/macro/macro_dll.html#label-26
0240デフォルトの名無しさん
2013/04/06(土) 12:44:14.74いくつかのキーが認識されたりされなかったりするようになった。
耐久性500万回と言っても認識されないんじゃ無意味。
半年保証期間内だったけどめんどくさいので新調。
今度はロジクールの新製品(*日本語版)「K120」
さらに上をいく耐久性1000万回、3年保証。
さあどうでしょうか・・・
0241デフォルトの名無しさん
2013/04/06(土) 16:16:36.850242デフォルトの名無しさん
2013/04/07(日) 11:54:21.650243デフォルトの名無しさん
2013/04/07(日) 13:16:48.970244デフォルトの名無しさん
2013/04/07(日) 13:44:47.08遊撃手のみを抽出する正規表現はどう書けばいいのでしょうか?
0245デフォルトの名無しさん
2013/04/07(日) 22:44:24.380246デフォルトの名無しさん
2013/04/07(日) 23:26:57.47それが元で梅村君はバイソン 若村君はジャクソン
下村君はアンダーソンとみんなかっこいいあだ名がついたのに
津村君だけあだ名がバスロマンだったのはイジメに近いし
今思うとバスロマンはツムラじゃなくてアース製薬
0247デフォルトの名無しさん
2013/04/07(日) 23:28:09.340248デフォルトの名無しさん
2013/04/07(日) 23:31:52.41スレチでコピペ乙だがとりあえずワロタw
0249デフォルトの名無しさん
2013/04/08(月) 11:17:45.47という奴もあるなw
0250デフォルトの名無しさん
2013/04/08(月) 20:35:38.640251デフォルトの名無しさん
2013/04/10(水) 15:00:59.38街の遊撃手かよ。ロートル乙。
0252デフォルトの名無しさん
2013/04/10(水) 15:55:41.08って突っ込むかどうか悩んだ上にそっとしておいたというのに
0253デフォルトの名無しさん
2013/04/10(水) 15:59:55.84という表現がマッチする文字列があるとします。
例えば、img01A.gifです。
この文字列から、頭のゼロを外した数字を抜き出したいです。
上の例では、「1」を抜き出したいです。
「01」を抜き出すのでよければ、
^.*(\d{2})[a-zA-Z]?\.gif
として、「$1」で受ければいいですが、
頭のゼロをスマートに取り除く方法を模索しています。
よろしくお願いします。有難うございます。
0254デフォルトの名無しさん
2013/04/10(水) 16:06:19.36かなぁテストはしてないけど
0255デフォルトの名無しさん
2013/04/10(水) 16:14:36.890?(\d{1,2})
の部分は、「数字二桁でなければならない」でお願いします・・・。
img001A.gif
img999.gif
img123A.gif
はNGとしたいです。
000001A.gif
99918.gif
もNGです。
00A.gif
もNGです。
01A.gif
はOKです。
01.gif
はOKです。
0256デフォルトの名無しさん
2013/04/10(水) 16:52:17.14処理系も提示しないから使えないとか後出ししても知らねえわ
(\D*?)(?:0)?((?<=0)\d|[1-9]\d)[a-zA-Z]?\.gif
0257デフォルトの名無しさん
2013/04/10(水) 17:02:15.85処理系とはなんでしょうか・・・.Net4.0を使っておりますが、コンパイルのことですか?
(\D*?)(?:0)?((?<=0)\d|[1-9]\d)[a-zA-Z]?\.gif
なるほど、「又は」で区切って前方チェックするということですか!
ありがとうございます!!
0258デフォルトの名無しさん
2013/04/10(水) 18:36:36.21正直すまんかった
0259デフォルトの名無しさん
2013/04/10(水) 18:47:54.170260デフォルトの名無しさん
2013/04/10(水) 19:03:29.100261デフォルトの名無しさん
2013/04/10(水) 19:28:28.71Regex regex = new System.Text.RegularExpressions.Regex(
@"(?<number>\d{1,}[a-zA-Z]?)\.gif$",
RegexOptions.IgnoreCase);
do{ Console.WriteLine("str=?");str = Console.ReadLine();
Console.WriteLine(regex.Match(str).Groups["number"].Value.TrimStart('0'));
} while (str != "999");
0262デフォルトの名無しさん
2013/04/10(水) 23:32:46.650263デフォルトの名無しさん
2013/04/10(水) 23:37:54.87地球が46億年前にでき、30億年前に原始生命が誕生した
多細胞生物→動物→哺乳類→霊長類→ヒト
ナメクジに生きる意味など無いであろう?
人間という種にも別に生きる意味など無いのだよ
気が付いたら「生きる意味」とかアホな世迷い言を考える種になっていた
「意味」とはそもそも、思考する際に考えのよりどころにするもの
だが、ヒトが生きていくために、合理的で生きていきやすい
社会・人生にするために、「意味」を作ることは大切なんだ
「意味」を理解したうえで…
0264デフォルトの名無しさん
2013/04/10(水) 23:40:48.080265デフォルトの名無しさん
2013/04/10(水) 23:46:38.72二桁に限定することもあきらめたのか。
まぁ、いいんでない。
その後の処理で数値として処理したそうな雰囲気がうっすらあるし。
でも、そうする予定かつその言語なら、その場面でTrimStartを使うのはウツケモノだなぁ。
やっぱ正規表現で何でもやろうとするなって主張したくなるわ。
0266デフォルトの名無しさん
2013/04/11(木) 00:56:40.97正規表現だけでやる場合も数行に分けるとぐっと簡単になる。
0267デフォルトの名無しさん
2013/04/11(木) 08:37:54.050268デフォルトの名無しさん
2013/04/11(木) 08:43:40.290269デフォルトの名無しさん
2013/04/11(木) 10:04:15.11List<MyClass>で、IComperableのSort規則を作るとき、
やっぱりストリングのnumberをintにパースして比較せざるを得なかったので。
文字Sortだと、
1.gif
11.gif
2.gif
っていうよくあるWindowsフォルダの自動並べ替え規則になってしまうので・・・。
すみません、スレチな話題で。
0270デフォルトの名無しさん
2013/04/11(木) 10:06:56.77これは、
\d*[1-9]\d*にしておきました。
0
00
は不正なファイル名としてマホカンタしたかったので。
0271デフォルトの名無しさん
2013/04/11(木) 15:30:20.45え、二桁であることが前提と、理由がそれなら0をとらずにソートすればよくね
0272デフォルトの名無しさん
2013/04/14(日) 20:29:41.910273デフォルトの名無しさん
2013/04/14(日) 20:54:59.750274デフォルトの名無しさん
2013/04/15(月) 16:50:37.91まじで?
0275鬼車作者の目に留まることを期待して
2013/04/15(月) 19:08:29.91氏に再検証して貰うための情報を示そうにも、サイトは書込み禁止になっているようなの
で、ここをお借りします。いずれ、「鬼車」氏の目に留まるかも知れない事を期待します。
・国鉄下山総裁は他殺であり、自殺は断じてあり得ない。キーワードは、「CIA special
technical team in Japan」
・ダニエル・エルズバーグが New York Times に持ち込んだ通称「ペンタゴン・ペーパー
ズ」自体は米国政府により2011年6月に機密指定が解除され、現在「米国立公文書館」の
サイトでも閲覧できるが、(http://www.archives.gov/research/pentagon-papers/)こ
の中には、肝心の付属資料は含まれていない。グラベル米国上院議員が独自に入手した資
料を含めた四巻本(全7000頁)がすでに40年も前に米国で公刊されているが、この中に
「下山事件」を含め、戦後日本で起きた奇怪な事件を解くカギがあるように見える。
殺害の実行犯人の個人名までは、まだ特定されていないが、
・組織名:日本駐在CIA特殊工作班
・統括責任者氏名: エドワード・ランズデール(米国空軍大佐)
までは、すでに暴露されている。この「CIA特殊工作班」自身がまとめた1954〜1955年
にベトナムで実行した謀略活動の記録が、上記グラベル上院議員がまとめた著書に収録
されていて、現在ネットでも読めます。
https://www.mtholyoke.edu/acad/intrel/pentagon/doc95.htm
の中の d. October 1954 の項目にあります。ベトナムで鉄道破壊、ダム・港湾破壊、
流言蜚語などの諜報活動を行うために、1954年7月に日本に駐屯していた「CIA special
technical team in Japan」をベトナムに呼んだという記載。
・なお、下山総裁を殺害直前に三越百貨店に誘き出した韓国人情報屋を米軍小倉刑務所で
取り調べた布施健東京地検検事の検事調書が、直後に強奪され失われましたが、それが現
在同じ「米国立公文書館」に保存されているようですが、ネットには公開されていないの
か、見つけ出せないでいます。知っている方がいたら、教えてください。
0276デフォルトの名無しさん
2013/04/15(月) 19:49:22.370277デフォルトの名無しさん
2013/04/15(月) 19:50:53.780278デフォルトの名無しさん
2013/04/15(月) 20:00:21.910279デフォルトの名無しさん
2013/04/15(月) 20:12:08.600280デフォルトの名無しさん
2013/04/15(月) 21:05:56.10そもそも正規表現NGワード搭載の専用ブラウザがあるのかすら知らんけど
0281デフォルトの名無しさん
2013/04/15(月) 22:35:34.620282デフォルトの名無しさん
2013/04/15(月) 23:49:35.960283デフォルトの名無しさん
2013/04/15(月) 23:57:22.97地球が46億年前にでき、30億年前に原始生命が誕生した
多細胞生物→動物→哺乳類→霊長類→ヒト
ナメクジに生きる意味など無いであろう?
人間という種にも別に生きる意味など無いのだよ
気が付いたら「生きる意味」とかアホな世迷い言を考える種になっていた
「意味」とはそもそも、思考する際に考えのよりどころにするもの
だが、ヒトが生きていくために、合理的で生きていきやすい
社会・人生にするために、「意味」を作ることは大切なんだ
「意味」を理解したうえで…
0284デフォルトの名無しさん
2013/04/16(火) 01:13:10.86Jane系はNGexがあるよ
改行は<br>とすれば良い
0285デフォルトの名無しさん
2013/04/16(火) 11:19:06.22Jane系使ってるなら↓で訊いた方がよさそう
NGEx.txtを晒すスレ4
http://mattari.plusvip.jp/test/read.cgi/jane2ch/1325934427/
他のブラウザは知らね
0286デフォルトの名無しさん
2013/04/16(火) 17:55:09.0410〜15位のとき。はがねのつるぎとか買う時代。レベル上げ(経済成長)が
楽しくて仕方無い時期。これからのストーリー展開も未知であり楽しみ。
俺らは、終わったドラクエのレベル上げてるみたいなもん。
ものごころついた頃には天空の剣とか何でもそろってる。
お金稼いでも買うものが無い。全フィールド全てやりつくされてる。
はっきり言ってつまらねえ。やることと言ったら、取り忘れた
黄金の爪を取りに行く(過疎地に道路を通す)とかそんなのばっか。
退屈。今の連中に、じじいばばあと同じモチベーションを持てというのは酷だ。
0288デフォルトの名無しさん
2013/05/23(木) 17:53:57.80検索ワードの後にまだ何か付いていたり、何も付いてなかったりするので困っています。
(前略)&q=検索ワード&(以下略)
(前略)&q=検索ワード
0289デフォルトの名無しさん
2013/05/23(木) 18:07:01.380290デフォルトの名無しさん
2013/05/23(木) 18:20:03.390291デフォルトの名無しさん
2013/05/23(木) 18:54:56.950292デフォルトの名無しさん
2013/05/23(木) 18:57:08.790293デフォルトの名無しさん
2013/05/23(木) 19:11:46.74このスレで話す内容じゃない
スレ立てるまでもない質問はここで 126匹目
http://toro.2ch.net/test/read.cgi/tech/1363522503/
0294デフォルトの名無しさん
2013/05/23(木) 20:40:02.85環境はPerlです。
エンコードってどっちでしたっけ?
%16進?とかってやつです。
人間がそのまま読めないやつです。
クエリではなくApacheのログにあるリファラからの抽出です。
0295デフォルトの名無しさん
2013/05/23(木) 21:18:45.510296デフォルトの名無しさん
2013/05/24(金) 04:38:15.120297デフォルトの名無しさん
2013/05/24(金) 05:37:48.18カネ払って業者に作ってもらったら?
0298デフォルトの名無しさん
2013/05/24(金) 15:09:19.80で調べて、見つからなかったら
$str=~/&q=.*&/
で調べれば済むだろ
0299デフォルトの名無しさん
2013/05/24(金) 16:35:42.49それも出来ないならまずスキルを磨くべき。
自分に甘すぎだろjk
0300デフォルトの名無しさん
2013/05/24(金) 16:55:21.18俺は正規表現で質問がきたもんだから正規表現で考えてしまった
0301デフォルトの名無しさん
2013/05/24(金) 23:52:39.10例えば「\」を「"」に置換したい場合に、普通の文字列扱いで置換できるソフトならその方が断然楽だし
0302デフォルトの名無しさん
2013/05/25(土) 16:53:07.080303デフォルトの名無しさん
2013/05/25(土) 17:04:43.150304デフォルトの名無しさん
2013/05/25(土) 17:45:06.46見通しは悪くなりがちよね
0305デフォルトの名無しさん
2013/05/25(土) 17:55:42.88「普通に」って、具体的にどういう手法を使うのが「普通」なわけ?
一般的に「これが普通」って手法は無いと思うけど。
0306デフォルトの名無しさん
2013/05/25(土) 18:17:23.570307デフォルトの名無しさん
2013/05/25(土) 18:59:44.390308デフォルトの名無しさん
2013/05/25(土) 19:10:59.750309デフォルトの名無しさん
2013/05/25(土) 20:04:34.28文字の各ビットに各キーを割り当てて1フレームに一文字生成して、
[\u0001]+[\u0003\u0000]{0,10}[\u0002]+、とかか?
判定処理のバグ探しが減っても、コマンド定義するのがダルくなるな
0310デフォルトの名無しさん
2013/05/27(月) 16:42:31.54PH5
●検索か置換か?
置換
●説明
行の先頭に+がついてるものを<li></li>で囲んで
+が連続で複数行についている場合はそれをまとめて<ul></ul>で囲みたい
●対象データ
+あいうえお
+かきくけこ
+さしすせそ
+たちつてと
●希望する結果
<ul>
<li>あいうえお</li>
<li>かきくけこ</li>
<li>さしすせそ</li>
</ul>
<ul>
<li>たちつてと</li>
</ul>
0311310
2013/05/27(月) 16:50:15.50PH5じゃなくて、PHP5でした。
わかりやすくなるのであれば、preg_replaceを数回使ってもらっても大丈夫です。
0312デフォルトの名無しさん
2013/05/27(月) 16:57:05.00いい問題。課題としては。
0313デフォルトの名無しさん
2013/05/27(月) 17:00:15.15ほとんどスレ違いだぞ。
0314デフォルトの名無しさん
2013/05/27(月) 18:30:26.370315310
2013/05/28(火) 02:27:41.80結局、正規表現は使わずじまいでした...
0316デフォルトの名無しさん
2013/05/28(火) 09:03:25.48こっちは無駄手間だし誰も得しないだろ。本当に分からないときだけ分からないことだけ質問しろ。
0317デフォルトの名無しさん
2013/05/28(火) 13:52:32.860318デフォルトの名無しさん
2013/05/28(火) 15:22:26.130319デフォルトの名無しさん
2013/05/28(火) 15:45:11.96本当にゆとりで、マルチポストでPHPやperlやC++やシェル等いっぱい同じ質問が投げられてたらと思うと
0320デフォルトの名無しさん
2013/05/28(火) 18:58:13.890321デフォルトの名無しさん
2013/05/28(火) 19:58:51.170322デフォルトの名無しさん
2013/05/28(火) 22:53:08.880323デフォルトの名無しさん
2013/05/29(水) 14:37:48.870324デフォルトの名無しさん
2013/05/29(水) 15:06:54.470325デフォルトの名無しさん
2013/05/29(水) 15:10:00.510326デフォルトの名無しさん
2013/05/30(木) 10:31:22.18ただ致命的なバグのせいで実用にぎりぎり耐えなかった。
0327デフォルトの名無しさん
2013/05/30(木) 10:36:24.93普通埋め込みで使うからな…SQLをどの言語上で使うか聞かれてる感じ。
単体で使うのはgrep、sedが多いがそれは単に他の用途に使ってないというだけだろう。
0328デフォルトの名無しさん
2013/05/30(木) 12:58:20.50っていうかその文脈ではPosix/Perl系正規表現言語を使ってますって言えばいいんじゃないのか?
それ以外の正規表現で実用されてるのがどれだけ有るかは全く知らんけど。
BNFは正規表現になるんだっけか?
0329デフォルトの名無しさん
2013/05/30(木) 13:03:21.560330デフォルトの名無しさん
2013/05/31(金) 17:53:28.64BNFでは表現できるが、正規言語では表現できない、というものはある。
簡単で有名なものでは、カッコの対応ができているか否かの判定。
0331デフォルトの名無しさん
2013/05/31(金) 18:52:24.79正規表現ってだけでは限定できないよ。
鬼車系、Perl、PCREは再帰表現ができるから入れ子の判定が可能。
ただ、マッチの判定だけだから、キャプチャが言語の力を借りな
いと処理できない。
0332デフォルトの名無しさん
2013/06/01(土) 02:39:20.22どんなバグがある?
0333デフォルトの名無しさん
2013/06/01(土) 18:10:30.59このソフトはブラウザとWEBページの間に入ってHTMLソース等の置換をするソフトなんだけどね、
たまにアクセス要求が勝手に却下されるバグがあるの。
でも正規表現のルールは独自のもので面白いからもし興味があれば・・
Proxomitron フィルター作成スレッド Part14
http://anago.2ch.net/test/read.cgi/software/1326800481/
0334デフォルトの名無しさん
2013/06/01(土) 18:49:52.76>たまにアクセス要求が勝手に却下されるバグがあるの。
まじすか
使っているけど気づかなかった
0335デフォルトの名無しさん
2013/06/01(土) 20:32:36.23画像が多いページを読み込むと、読み込みに失敗して表示されない画像があったり、
リロードしてもいつまでも真っ白のまま読み込まれなかったりするよ。
自分はWEBサイトを丸ごと保存するときにリンクを絶対リンクから相対リンクに置換するために
使ってたんだけどバグのせいで保存されないページが出てしまって使うのを断念しました。
0336デフォルトの名無しさん
2013/06/01(土) 20:58:37.860337デフォルトの名無しさん
2013/06/01(土) 21:13:54.59関西弁にするやつとかもあったな。
0338デフォルトの名無しさん
2013/06/02(日) 06:19:11.51割と普通のPerl系正規表現だが、Privoxyも正規表現使えるぞ。
ヘッダやURLに対しても正規表現で置換ができたりして面白い。
パッチ版もGUIが弱いからProxomitronも併用してるが、正規表現でゴリゴリやるならこっちのほうが強いかも
0339デフォルトの名無しさん
2013/06/02(日) 16:06:49.96当時はPrivoxyは落ちるって噂があって自分は触らなかった。今はどうなのか知らないけどね。
WEBサイトの保存の件はローカルにダウンロードしてから置換するようにしたからプロキシはもう要らないかな。
0340デフォルトの名無しさん
2013/06/04(火) 18:35:38.00教えて君は死ね、と返ってくるスレでしょうか?
読み上げソフトの正規表現についてググッたり、勉強してるのですが
中々うまくいかないもので
0341デフォルトの名無しさん
2013/06/04(火) 18:51:03.870342デフォルトの名無しさん
2013/06/04(火) 19:05:25.090343デフォルトの名無しさん
2013/06/05(水) 12:56:01.07いや俺もよくやるけどw
0344デフォルトの名無しさん
2013/06/05(水) 14:26:11.720345デフォルトの名無しさん
2013/06/05(水) 15:15:10.68おいやめろ
0346デフォルトの名無しさん
2013/06/05(水) 16:47:48.090347デフォルトの名無しさん
2013/06/05(水) 18:55:43.540348デフォルトの名無しさん
2013/06/05(水) 19:45:10.360349デフォルトの名無しさん
2013/06/05(水) 20:48:50.330350デフォルトの名無しさん
2013/06/06(木) 19:55:55.87もう見てないと思うけど
正規表現でやるとこんな感じ
1回目
^\+(.*)
<li>\1</li>
2回目
((^<li>.*</li>\n)+)
<ul>\n\1</ul>\n
0351デフォルトの名無しさん
2013/06/06(木) 23:40:00.740352デフォルトの名無しさん
2013/06/06(木) 23:40:51.95だから単一行の場合は・・?
0353デフォルトの名無しさん
2013/06/06(木) 23:49:09.761、「行の先頭に+がついてるものを<li></li>で囲んで」
2、「+が連続で複数行についている場合はそれをまとめて」
3、「<ul></ul>で囲みたい」
単一行の部分は1のあと直接3に進むんでしょ
希望する結果からしてもそうだし、HTMLやWiki系記法的にもそうだろうし
0354デフォルトの名無しさん
2013/06/07(金) 01:12:03.86あー、悪い。間違ってたのは俺のほうだった。日本語の勉強してくる。
0355デフォルトの名無しさん
2013/06/07(金) 01:37:23.880356デフォルトの名無しさん
2013/06/07(金) 01:42:09.520357デフォルトの名無しさん
2013/06/07(金) 02:43:51.00精神病だと攻撃されたって思い込みやすいらしいから気をつけて。
0358デフォルトの名無しさん
2013/06/07(金) 04:19:04.830359デフォルトの名無しさん
2013/06/07(金) 04:58:54.52まぁいい加減にしとけ>>355-358
0360デフォルトの名無しさん
2013/06/07(金) 16:09:15.95攻撃されたなどというのはその質問者だと仮定してないと出てこない表現だから
357 :デフォルトの名無しさん [↓] :2013/06/07(金) 02:43:51.00
いや、叩くつもりなんか毛頭無いよ。なんでそう受け取るのかな。
精神病だと攻撃されたって思い込みやすいらしいから気をつけて。
0361デフォルトの名無しさん
2013/06/07(金) 16:14:18.920362デフォルトの名無しさん
2013/06/07(金) 16:43:13.350363デフォルトの名無しさん
2013/06/07(金) 18:04:39.220364デフォルトの名無しさん
2013/06/08(土) 03:45:11.97質問者に同化して被害を訴える心理とかもあるから一概には言えないよ
メンタル不安定の嫌疑は俺含め何重にでも掛けれてキリがないんで
まぁいい加減にしとけ>>355-362
0365デフォルトの名無しさん
2013/06/08(土) 03:51:56.63どう考えると>>358の書き込みになるの?答えたくないなら別にいいけどさ・・
0366デフォルトの名無しさん
2013/06/08(土) 04:55:34.05もともと横から下らんレスする人なんだからほっときなよ
0367デフォルトの名無しさん
2013/06/08(土) 05:28:49.820368デフォルトの名無しさん
2013/06/08(土) 09:42:39.55あとは産廃以下
0369デフォルトの名無しさん
2013/06/08(土) 10:36:12.810370デフォルトの名無しさん
2013/06/12(水) 16:49:09.98ActivePerl5.8
●検索か置換か?
検索
●説明
連続する数を検索したい(1965から2011までの数)
●対象データ(配列内に格納)
1952
1965
1986
2012
1972
2011
・
・
●希望する結果(配列の各要素を正規表現で検索して、マッチする要素だけ抽出)
1965
1986
1972
2011
・
・
配列の各要素が1955から2011までの数の場合にマッチする正規表現を教えてください
0371デフォルトの名無しさん
2013/06/12(水) 17:02:53.440372デフォルトの名無しさん
2013/06/12(水) 17:09:20.120373デフォルトの名無しさん
2013/06/12(水) 17:34:23.25システムの検索関数が正規表現を渡して検索するようになってるので・・
こっちで配列を受け取って比較演算子で判定できれば話は早いんですけどね・・
0374デフォルトの名無しさん
2013/06/12(水) 18:21:20.09いや俺もやったことあるけどさ、4桁だったけど相当ひどかった記憶。
0375デフォルトの名無しさん
2013/06/12(水) 18:31:15.600376デフォルトの名無しさん
2013/06/12(水) 19:04:20.63(?:19(?:6[5-9]|[7-9][0-9])|20(?:0[0-9]|1[01]))
0377デフォルトの名無しさん
2013/06/12(水) 20:01:28.96どうもありがとうございます
その正規表現で出来ました
>>374
ですよね、連続数を正規表現で検索なんて普通はないですよね
0378デフォルトの名無しさん
2013/06/13(木) 10:11:34.60例:遠山、高山、山下、山崎、山川、山中、山田、山本、中山、平山、など山と付く名前から
山(田|中|本) とすれば、山田、山中、山本だけをピックアップすることが出来るのは解ったのですが
遠山、高山、山崎、だけを探したい場合 (遠|高)山(崎) としたのですがダメでした
さすがにこんな単純じゃないですよね?何が足りないんでしょう?
あ、足りないのはお前の頭だ、というのはご勘弁ください
0379デフォルトの名無しさん
2013/06/13(木) 12:02:26.37ぶっちゃけ、素直に○山さんと 山○さんで分けて検索したほうが楽だと思う
0380デフォルトの名無しさん
2013/06/13(木) 14:01:38.45足りないのは「ネスト」
0381デフォルトの名無しさん
2013/06/14(金) 11:03:51.78ネスト、勉強になります
が、()の使い所が沢山あるんですね、訳がわかりません
0382デフォルトの名無しさん
2013/06/14(金) 12:34:51.19((遠|高)山|山崎)
だと思うよ。
括弧には後で利用するためのキャプチャの意味とグループ化の
2つの意味がある。グループ化の意味を強調したいなら、(?: )
があるよ。
0383デフォルトの名無しさん
2013/06/14(金) 17:15:05.65と言っても俺が知ってるwordは2000年ころのだから今とは違うかも。
0384デフォルトの名無しさん
2013/06/14(金) 18:31:09.84>>382
ありがとうございます参考になります
0385デフォルトの名無しさん
2013/06/21(金) 11:13:18.36result = m.replaceFirst("new");
で最初の文字は置き換えれますが
2回目やっても次へ移動してません。
2つめも置き換えるにはどうしたらよいでしょうか?
0386デフォルトの名無しさん
2013/06/21(金) 11:29:35.92↓
m.replaceAll
0387デフォルトの名無しさん
2013/06/21(金) 11:31:11.51命令のたびに2つめ、3つめ…
というようなことはできないんでしょうか?
0388デフォルトの名無しさん
2013/06/21(金) 21:29:28.150389デフォルトの名無しさん
2013/06/22(土) 09:14:55.85自分が貼ったコードよりシンプルで簡単なコードの書き方があると地味にショックなんだよねぇ。
0390デフォルトの名無しさん
2013/06/22(土) 11:19:08.48それも自分の勉強になるではないか。
顔も名前も見えないのだから、恥も外聞も無いし。
0391デフォルトの名無しさん
2013/06/26(水) 11:19:13.365桁の英数字の文字列データから、各桁が M W w のいずれかのみ、で構成されている文字列を検索する
MwwWM
wwWMw
WWWMM
wMWww などがヒットするようにする
[MWw][MWw][MWw][MWw][MWw]と書けば良いとは思いますが、[MWw]{5}と記述しても同様の結果は得られるのでしょうか?
10桁とか12桁でも考えているので、コンパクトにまとめたいのです
{}は直前の繰り返しだから
MMMMM
WWWWW
wwwww としか一致しないのでしょうか?
一日でヒットするデータが得られるとは限らないものなので、簡単に検証できないのです
よろしくです
0392デフォルトの名無しさん
2013/06/26(水) 11:43:39.04簡単な正規表現ならこういうとこで実験出来るよ。
正規表現テスター (Flash ActionScript3.0)
http://1st.geocities.jp/neeetest/as3_regexp.html
検索表現 ⇒ [MWw]{5}
置換表現 ⇒ Hit!
対象文字列 ⇒ MwwWM
フラグ ⇒ g にチェックを入れる
と入力して「テスト」ボタンを押してみ。
ちなみにこのテスターでは改行にマッチさせるには \r を使うんだけど、
テストした正規表現を実際に使うときには \r を \n や \r\n に書き換える必要があるかも。
1改行2 にマッチさせるにはテスターでは 1\r2 と書くが、実用する際には
1\r\n2 や、1\n2 と書かないと動かないケースがある。
0394デフォルトの名無しさん
2013/06/27(木) 16:38:40.13なかなかいい着眼点だとは思う。
でも、たぶん \d{4} が、ぞろ目にしかマッチしないのかなと不安にはなっていなそう。
0395デフォルトの名無しさん
2013/06/27(木) 17:57:06.25ワケワカメなレスはしなくていいぞ。
0396デフォルトの名無しさん
2013/06/27(木) 22:31:52.57わけわかめなのはお前だけだよ。
0397デフォルトの名無しさん
2013/06/30(日) 17:56:43.37●正規表現の使用環境
PHP5.3.3
●検索か置換か?
置換
●説明
・URLが含まれていたときに、jpg,png,gifならimgタグへ変換。
・それ以外ならaタグへ変換。
・URLに日本語が含まれていた場合も、スペースや改行、文字列の終端にくるまでのものも上記のようにリンク化
●対象データ
[1] こちらへ→http://example.com/index.html
[2] 写真はこれです→https://example.com/写真.jpg
●希望する結果
[1] こちらへ→<a href="http://example.com/index.html">http://example.com/index.html</a>
[2] 写真はこれです→<img src="https://example.com/写真.jpg" />
0398デフォルトの名無しさん
2013/06/30(日) 18:14:12.100399デフォルトの名無しさん
2013/06/30(日) 18:36:41.440400デフォルトの名無しさん
2013/06/30(日) 20:37:27.30一度に全部やらずにURLの検索と
ケツの拡張子のチェックに分ければいいよ
0401デフォルトの名無しさん
2013/06/30(日) 23:29:08.97((http|https):\/\/[0-9a-zA-Z\/\._]+[^(\.png)][^(\.jpg)][^(\.gif)])
間違っているのが後ろの指定方法なのはわかっているのでさが、○○で終わらない というのを複数指定するほうほうがよくわかりません。
正規表現には「|」はありますが、「&」という記法がないので…
0402デフォルトの名無しさん
2013/07/01(月) NY:AN:NY.AN0403デフォルトの名無しさん
2013/07/01(月) NY:AN:NY.AN↑aで終わらない文字列にマッチする正規表現。
aの代わりに (?:\.jpg|\.gif) と書けば.jpgや.gifで終わらない、という意味になる。
最後の .*$ は (http|https):\/\/[0-9a-zA-Z\/\._]+ に書き換える。
>「&」という記法がない
2回に分けてマッチングさせれば論理積になる。
1回目でURL文字かどうかのチェック、2回目で末尾が画像かチェック、など。
0404デフォルトの名無しさん
2013/07/01(月) NY:AN:NY.AN何か邪悪な呪文を読んでる気分になって発狂しそうになる
0405デフォルトの名無しさん
2013/07/01(月) NY:AN:NY.AN0406デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANコピーをミスって、投稿者の行を読み上げるのを防ぐ為に正規表現の置き換え、を使おうと思ったんですが
解らない部分を教えて頂けませんでしょうか?
\d{1,3}\s名前:各板ごとの投稿者名(\[sage\]|\[age\]|\[\])\s投稿日:〜〜〜〜〜
この『各板ごとの投稿者名』、は沢山ありますよね?
文字数は不定、使われている文字種も不定、正規表現で表すためにはどう記述するのでしょうか?
『あらゆる文字数、文字列』という表現はあるんでしょうか?
0407デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.AN.* で良かったっぽいですね
0408デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.AN.*? で最短マッチにした方がいい
0409デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANですか?
最短一致、最短マッチの意味をググってます、分かるようで分からないような
仮に最短マッチにしないと、どういう不都合が起きますか?
次の括弧までの文字列しかマッチしないということなのかな?
0410デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANReplaceStr.txtで置き換えを考えてるのなら、置換対象を指定すれば
複雑な指定をしなくても、各要素ごとに別々に別指定できるよ
また、単に表示を消すだけならスキンファイルRes.htmlやNewRes.htmlを
<dt><NUMBER/><dd><MESSAGE/><br><br></dd><hr>
で作成すれば、レス番号しか出なくなる
0411デフォルトの名無しさん
2013/07/02(火) NY:AN:NY.ANすみません、読み上げソフトを触って初めて正規表現なる存在を知ったほど、超絶初心者なので
分かるのはだいぶ先の事になると思います
0412デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.ANとなるともしかしたらソフトウェア板のほうが適切かもしれない
0413デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.ANあいうえおあいうえおあいうえお
という「あいうえお」の繰り返し文字があったら
1番最後の「うえ」だけ一致させる方法と
2番目の「うえ」だけ一致させる方法が解らない
それぞれどういう方法があるんでしょうか?
すみません教えて下さい
0414デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.ANうえ(?!.*うえ)
hit!
・2番目
^((?:(?!うえ).)*うえ(?:(?!うえ).)*)うえ
$1hit!
(?!うえ). ⇒ "うえ" じゃない1文字にマッチする。
(?:(?!うえ).)* ⇒ ↑の繰り返し。↑の .* 版。
(?! ) の使い方
http://funcchan.blog16.fc2.com/blog-entry-37.html
0415デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.ANありがとうございます、勉強になります
0416デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.AN$1 $2 ぐらいしか無いのかな?
0417デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.ANhttp://funcchan.blog16.fc2.com/blog-entry-34.html
0418デフォルトの名無しさん
2013/07/19(金) NY:AN:NY.ANサンクス
0419デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANsakura editor
●検索か置換か?
置換
●説明
xmlのtaxiwaypath要素のなかに
type="TAXI"と centerLineLighted="FALSE"が存在するときに、 他の属性を書き換えずにcenterLineLighted="TRUE"に書き換えたいです
●対象データ
<TaxiwayPath
type="TAXI"
…
centerLineLighted="FALSE"
…
/>
●希望する結果
<TaxiwayPath
type="TAXI"
…
centerLineLighted="TRUE"
…
/>
…は省略していると言う意味です
0420デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.AN(<TaxiwayPath(?=\s)(?=[^<>]*\stype\s*=\s*(?:(["'])\s*TAXI\s*\2|TAXI)(?=\s|/?>))
[^<>]*\scenterLineLighted\s*=\s*)(?:(["'])\s*FALSE\s*\3|FALSE)(?=\s|/?>)
置換
\1"TRUE"
検索は長いから2行に分けたから繋げて。
置換は"TRUE"の後ろに半角スペース1つを入れること。
type = TAXI
type = 'TAXI'
type = TAXI2 ←属性値に余計なものが付いてるときはマッチさせない
などにも無駄に対応しといた。
0421デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANありがとうございます
しかし実行してもマッチしませんでした
tabと改行なしで例文を検索したところマッチしたのでおそらく改行が原因と思われます
tabは整形で削除できたのですが、改行は修正しきれませんでした
出来れば改行に対応できないでしょうか
0422デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.AN\s -> [\s\r\n] or (?:\s|[\r\n])
0423デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANサクラエディタでは現在のところ複数行にまたがる検索はできないと思います。
正規表現ライブラリの問題ではなくサクラエディタ自体の仕様のようです。
(自分も以前この問題にぶつかって結局別のエディタを使いました)
で、以下は若干スレ違いのレスになってしまいますが。
改行コード自体の検索・置換はできるので、ありきたりですが
・改行コードを全部適当な他とぶつからない文字にいったん置換
・本来やりたい置換(>>420?)
・改行コードを元に戻す
あとサクラエディタのFAQサイトには以下のような回避策の記述があります。
http://sakura.qp.land.to/?FAQ%2F2
0424デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANありがとうございます
それは\sを [\s\r\n] または (?:\s|[\r\n]) に置き換えろということでしょうか
やってみたけど出来ませんでした
>>423
ありがとうございます
エディタをotbeditに変え、改行コードを漢字の「改」の字に置換えました(半角でパッと思いつかなかったので…)、
エディタ変えたら置き換える必要ないのかもしれないけど、
ちょっと質問がわかりにくかったと思うので置き換えて改めて質問させて頂きます
<TaxiwayPath改type="TAXI"改start="72"改end="49"改width="30.48M"改weightLimit="500000"改
surface="ASPHALT"改drawSurface="FALSE"改drawDetail="FALSE"改centerLine="TRUE"改
centerLineLighted="FALSE"改leftEdge="SOLID"改leftEdgeLighted="TRUE"改rightEdge="SOLID"改rightEdgeLighted="TRUE"改name="83"/>改
行が長すぎるので改行していますが本来は繋がっています
原文ママでこの要素が全文で30000個以上あります
この中で、
type="TAXI"かつcenterLineLighted="FALSE"になっている要素のcenterLineLighted属性の値を
centerLineLighted="TRUE"に置き換えたいです
長文になってしまい申し訳ありませんが、よろしくお願いします
0425デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.ANプログラム言語で直に置換するものでやったほうがいいよ。>>420のままで動いたし。
エディタと正規表現って相性が良くないから何かと制約が出てしまうことが多いんだよね。
エディタの内部処理では文末にデータの終端を示す文字が自動的に埋め込まれてたりして、$が本来の
文末にマッチしなかったり、改行に制約が付いたり。秀丸でも改行に制約があったはず。
サクラエディタではperlを使った置換が出来るらしいからそれを使ってもいいかもね。
0426デフォルトの名無しさん
2013/07/24(水) NY:AN:NY.AN× \1"TRUE"
○ $1"TRUE"
検索のほうは2行に分割してるのをそのままコピペで動いた。改行を消して1行に繋げる必要なし。
0427デフォルトの名無しさん
2013/07/25(木) NY:AN:NY.AN検索
(<TaxiwayPath(?=\l)(?=(?:[^<>]|\l)*\ltype\l*=\l*(?:(["'])\l*TAXI\l*\2|TAXI)(?=\l|/?>))
(?:[^<>]|\l)*\lcenterLineLighted\l*=\l*)(?:(["'])\l*FALSE\l*\3|FALSE)(?=\l|/?>)
置換
$1"TRUE"
改行にマッチ出来なかったのは [^<>]* が改行文字にマッチしないのを見落としてたからだった。
(?:[^<>]|\l)* に修正して完成。てへぺろ。
0428デフォルトの名無しさん
2013/07/25(木) NY:AN:NY.ANテスター使ってやってみたのですが、やはりできませんでした
環境か設定が悪いのでしょうか
表示画面はこのようになり、変更されていません
フラグもチェックしましたが相変わらずです
http://i.imgur.com/mVM4qwA.jpg
それからその2段表記の正規表現の間にスペースは含まれますか?あってもなくても変わらないのでしょうか
2ちゃんの仕様で例文の後ろに半角スペースがついていますが原文にはありません
よろしくお願いします
0429デフォルトの名無しさん
2013/07/25(木) NY:AN:NY.AN0430デフォルトの名無しさん
2013/07/25(木) NY:AN:NY.AN>>427はotbedit用。それ以外の環境では動かない。
\l ← otbeditにしか無い独自のメタ文字
0431デフォルトの名無しさん
2013/07/25(木) NY:AN:NY.ANテスター用、というか一般的な環境で使えるのも用意しようか、今から作るね。
0432デフォルトの名無しさん
2013/07/25(木) NY:AN:NY.AN(<TaxiwayPath(?=\s)(?=(?:[^<>]|\s)*\stype\s*=\s*(?:(["'])\s*TAXI\s*\2|TAXI)(?=\s|/?>))
(?:[^<>]|\s)*\scenterLineLighted\s*=\s*)(?:(["'])\s*FALSE\s*\3|FALSE)(?=\s|/?>)
$1"TRUE"
これはotbeditでは動きません。
0433デフォルトの名無しさん
2013/07/26(金) NY:AN:NY.AN>>424に 「原文ママでこの要素が全文で30000個以上あります」 とあるから
ショボいxmlエディタだと固まる可能性ある。
というか>>419の条件だと正規表現でやったほうが早いんじゃね?
type="TAXI"があるかどうかの確認が必要になるし。
0434デフォルトの名無しさん
2013/07/26(金) NY:AN:NY.AN毎回正規表現をコピペする必要が無い。下手なエディタよりラク。
0435デフォルトの名無しさん
2013/07/26(金) NY:AN:NY.AN皆さんどうもありがとうございました
結局正規表現ではうまくいきませんでしたが、専用のツールを使って解決できました
皆様には大変感謝しています
0436デフォルトの名無しさん
2013/07/27(土) NY:AN:NY.AN>>419の対象データだとそれをしなくてもたまたま置換に成功してしまうので
1行に繋げなくてもいいのかと勘違いしてしまった・・(おかしいなとは思ったんですが)
テスターなら2行のままで、フラグの「x」にチェックを入れれば動きます。
動作確認不足で申し訳ない・・
0437デフォルトの名無しさん
2013/07/31(水) NY:AN:NY.AN> type="TAXI"があるかどうかの確認が必要になるし。
だからこそxpathでいいじゃんって話なんだけどなぁ。
まぁ、遅いかもねっていうのは否定しない。メンテナンスの容易さとトレードオフで。
0438デフォルトの名無しさん
2013/08/01(木) NY:AN:NY.AN実際使えてるみたいだし固まるとかも余計な心配だったね。
今更だけど>>436に「g」のチェックも追加。これ付けないと最初の1つ目しか置換されないという・・
gdgdですまん。
0439デフォルトの名無しさん
2013/08/03(土) NY:AN:NY.AN検索する文字列の条件(例えば英字で挟まれている数字列)と取り出す文字列の条件(数字列)はの
記述は。どのように書き分けるのでしょうか?
0440デフォルトの名無しさん
2013/08/03(土) NY:AN:NY.AN> 質問です。
| 質問する場合は必ず実装言語や処理系ソフトウェア名を示してください。
0441デフォルトの名無しさん
2013/08/03(土) NY:AN:NY.AN0442デフォルトの名無しさん
2013/08/03(土) NY:AN:NY.AN理解できん
0443デフォルトの名無しさん
2013/08/03(土) NY:AN:NY.AN内容はごく簡単なものだが、母国語でやるほうが楽だと俺は思うんだ。
0444デフォルトの名無しさん
2013/08/03(土) NY:AN:NY.AN>>439
<match>
[a-z](\d+)[a-z]
<replace>
$1
0445439
2013/08/03(土) NY:AN:NY.AN言語はobjective-cです。
例は質問の意図を説明するもので、「例の回答」を求めているわけではありません。
検索する文字列の条件と取り出す文字列の条件の記述は、
「一般的に」どのように書き分けるのかという質問です。
0446デフォルトの名無しさん
2013/08/03(土) NY:AN:NY.AN0447デフォルトの名無しさん
2013/08/04(日) NY:AN:NY.ANどういう回答を期待してるのかがよく分からないので、その質問の答えとして
「一般的に」どう回答すると良いのかを示して下さい。
0448デフォルトの名無しさん
2013/08/04(日) NY:AN:NY.AN自分の環境ではありませんが、http://phpreg.1weekhack.com/preg_match のサイトで
検索ルール:/あ/
検索対象:aいa
では場合はマッチしないのですが
検索ルール:/[あ]/
で検索した場合、「い」の部分にマッチしてしています。
どちらも同じ意味だと思うのですがどのような違いがあるのでしょうか
0449デフォルトの名無しさん
2013/08/04(日) NY:AN:NY.AN改行部分が文字化けしてますが無視してください
0450デフォルトの名無しさん
2013/08/04(日) NY:AN:NY.ANこれを理解するには文字コードの知識が必要。
そのサイトの文字コードはUTF-8。
UTF-8での あ と い はそれそれ以下のように3バイトで1文字を表している。
あ = E3 81 82
い = E3 81 84
[あ] は E3 または 81 または 82 にマッチする。
い には E3 と 81 があるのでこの2つに2回のマッチが成功する。
[あ] は、 あ を構成する3つのパーツとして認識し、そのパーツと一致するパーツを検索する。
0451デフォルトの名無しさん
2013/08/04(日) NY:AN:NY.ANパーツがUTF-8と異なる。
shift_jisで E3 81 82 を使って あ にマッチさせようとしてもマッチしない。
また、 [あ] が あ にしかマッチしない環境もある。
その環境では正規表現エンジンがマルチバイトに対応しているということ。
0452デフォルトの名無しさん
2013/08/04(日) NY:AN:NY.AN私のPHP環境では正規表現エンジンがUTF8に対応していない ということですね…
非常にわかりやすい説明ありがとうございます
0453デフォルトの名無しさん
2013/08/04(日) NY:AN:NY.AN/\xE3\x81\x82/
検索対象
どあ
⇒3バイト目(あ)にマッチ。
0454デフォルトの名無しさん
2013/08/05(月) NY:AN:NY.AN私の?「自分の環境ではありませんが〜」って書いてるけどどういうことだろ。
まぁ「例:/^test/u」って書いてるよね。これ見るといいよ
http://www.php.net/manual/ja/reference.pcre.pattern.modifiers.php
0455450
2013/08/05(月) NY:AN:NY.ANあら・・そんなオプションがあったとは。
/uって何だろうと思いながら調べなかったのがいけなかった。
>>452
半端な回答してごめん。
0456デフォルトの名無しさん
2013/08/09(金) NY:AN:NY.AN0457デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.ANw の連続を読み上げさせないようにする為に
正規表現
[WwWw]{2,}
置き換え
なし
として、上手くいきました
そこでふと気がついたのですが
[W|w|W|w]{2,} とするとどうなるんでしょうか?
[WwWw] と [W|w|W|w] の解釈の違いがわかりません
正確には、それぞれどういう意味になるのか教えて頂けませんでしょうか?
0458デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN>[WwWw] と [W|w|W|w] の解釈の違いがわかりません
確認。聞きたいのは
(W|w|W|w){2,}
だよね?
ちなみに、[W|w|W|w]{2,} は [WwWw|]{2,} と同義
0459デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN[WwWw] と (W|w|W|w) の解釈の違いがわかりません
…と仮定して答えておくね。
[WwWw] は、文字 W、w、W、w のどれか。文字とは1文字のみのこと。
(W|w|W|w) は、文字列 W、w、W、w のどれか。文字列とは1文字〜複数個の文字。
だから、(WWWW|wwww|WWWW|wwww) なんてのもOk。
0460450
2013/08/18(日) NY:AN:NY.AN正規表現にもいろいろ種類があってそれぞれ動作が様々だからね。
0461デフォルトの名無しさん
2013/08/18(日) NY:AN:NY.AN>>459
有難う御座います参考になりました
>>460
すみません、使用してるのは、棒読みちゃん、TextToWav、SofTalkのそれぞれを試している状態です
0462461
2013/08/19(月) NY:AN:NY.AN丸括弧と角括弧の意味を、まともに理解できていないので、もっとちゃんとググってみます
0463デフォルトの名無しさん
2013/08/19(月) NY:AN:NY.AN精進してくれたまえ。
あと、>>459の記述に微妙な間違いがあったので訂正しておく。
>(W|w|W|w) は、文字列 W、w、W、w のどれか。文字列とは1文字〜複数個の文字。
誤)文字列とは1文字〜複数個の文字。
正)文字列とは0文字〜複数個の文字。
でした。失礼。
だから最初が空文字(=0文字)の、(|wwAB|WWXY|ww19) とかでもOk。
0464デフォルトの名無しさん
2013/08/19(月) NY:AN:NY.AN× 文字列とは0文字〜複数個の文字
○ 文字列とは0文字〜複数個の文字の羅列
0465デフォルトの名無しさん
2013/08/19(月) NY:AN:NY.AN[WwWw] >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> (W|w|W|w)
なので前者を使ってね。
0466デフォルトの名無しさん
2013/08/24(土) NY:AN:NY.ANW|w|W|w
だと処理効率はどうなるの?
後方参照のためのキャプチャもすることになる
(W|w|W|w)
の効率が良くないのは火を見るよりも明らかだけども
0467デフォルトの名無しさん
2013/08/24(土) NY:AN:NY.AN0468デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN( | ) での分岐ではバックトラック処理が原因で遅くなることがある。
正規表現を詳しく知りたいなら>>8の本を読むべき。(ステマじゃないよ)
>>467
ReplaceStrTool(鬼車エンジン)での測定結果。
([WwWw]|hoge)
[マッチ= No ] [検索=16113.288 ms] [置換=16154.999 ms] [ループ= 1000 ] [文字数= 107016 byte]
(W|w|W|w|hoge)
[マッチ= No ] [検索=1094.331 ms] [置換=1158.184 ms] [ループ= 1000 ] [文字数= 107016 byte]
他の正規表現エンジンでもこういう結果になるとは限らないので注意。
0469デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN([WwWw]|hoge)だと()用と[]用の2つのルーチンを交互に呼び出すから遅くなるとかかな?
ちょっと意外な結果だ。検証thx
0470デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN([WwWw]|hoge) : 48秒
(W|w|W|w|hoge) : 48秒
で変わらずだった。このへんは正規表現エンジンのクセなんだろうね
0471デフォルトの名無しさん
2013/08/25(日) NY:AN:NY.AN0472デフォルトの名無しさん
2013/08/26(月) NY:AN:NY.ANhoge厨は今すぐ消えろ。
頭おかしいんじゃね。
0473デフォルトの名無しさん
2013/08/26(月) NY:AN:NY.AN0474デフォルトの名無しさん
2013/08/26(月) NY:AN:NY.AN0475デフォルトの名無しさん
2013/08/26(月) NY:AN:NY.AN0476デフォルトの名無しさん
2013/08/26(月) NY:AN:NY.AN0477デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.ANサンプルコードでhogeを使ってる本は100%悪本だからまず最初に除外できる。
hoge使ってない本の中にも悪本はあるが、hoge使ってる書籍は間違いなく悪本。
0478デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.AN0479デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.ANhogehoge
0480デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.AN0481デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.AN0482デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.AN0483デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.AN0484デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.AN0485デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.AN文字列
str = "<tr><td>aaa</td><td>bbb</td><td>ccc</td></tr>"
に対して、一番最後の<td>から</tr>までを削除したくて
Pattern.compile("<td.+?</tr>").matcher(str).replaceFirst("");
などとやってみましたが、最初の<td>から</tr>までが削除されてしまっているようで
<tr>しか残りません。
最短マッチの方法が間違っているのでしょうか?
(実データではaaa,bbb,cccは再帰的にタグが入ります)
0486デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.AN一般的な正規表現で示します。
検索:^(.*)<td>.*</tr>$
置換:\1
※改行は含まれないこととする。
※この場合、先頭の^と末尾の$は無くても0k。
否定先読みを使う場合は、
検索:<td>((?!<td>).)*</tr>$
置換:空文字
※改行は含まれないこととする。
※この場合、末尾の$は無くても0k。
0487デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.AN>最短マッチの方法が間違っているのでしょうか?
方法ではなく、考え方の根本が間違っています。
その正規表現では、最初に発見した<td>から一番近い</tr>までがマッチします。(←重要)
一般的な正規表現では、「最短マッチ」など存在しません。
あくまで、「Non-Greedy/非貪欲/無欲/ものぐさ マッチ」です。
「最短/最小 マッチ」としか記述してない説明は正しくありません。
以下は比較的良心的な説明の例。
http://perldoc.jp/docs/perl/5.14.1/perlre.pod
>デフォルトでは、パターンで行われる量指定は"貪欲"です
>つまりそれはパターンの残りの部分が可能な範囲で、 (始めた地点から)可能な限り
>多くを先にあるパターンでマッチングさせます。
>もし最小回数でのマッチングを行いたいのであれば、量指定子の後ろに "?" を続けます。
>意味は変更されずに「貪欲さ」だけを変更できます
> *? 0 回以上の貪欲でないマッチング
> +? 1 回以上の貪欲でないマッチング
https://developer.mozilla.org/ja/docs/Web/JavaScript/Guide/Regular_Expressions
>*、+、?、{} といった量指定子の直後に使用した場合、
>その量指定子を無欲 (最小回数にマッチ) にします。
0488デフォルトの名無しさん
2013/08/27(火) NY:AN:NY.AN既に答えは書かれてるけど、↓にもそのものズバリな解説があるから参考までに
http://okwave.jp/qa/q8055322.html
0489デフォルトの名無しさん
2013/08/28(水) NY:AN:NY.ANthxです!
0490デフォルトの名無しさん
2013/09/02(月) 21:00:14.960491461
2013/09/11(水) 23:30:12.39Shift_JIS だと [亜-熙]
Unicode だと [一-龠々]
のようですが、合ってます?
仮に Unicode に [亜-熙] を使って検索で取り出そうとすると
一部の漢字が漏れてしまいますか?
0492デフォルトの名無しさん
2013/09/12(木) 00:05:44.58質問内容が正規表現スレのサポート範囲を逸脱してると思います
こちらで聞いた方がベターでは?
文字コード総合スレ part8
http://toro.2ch.net/test/read.cgi/tech/1354248962/
0493デフォルトの名無しさん
2013/09/12(木) 00:45:33.90\p{Han}
0494デフォルトの名無しさん
2013/09/12(木) 00:58:22.63環境にもよるが、Unicodeで漢字と非漢字日本語文字を分別するのは容易でない。
正規表現がそういう用途のものではないから。
まずは対象の正規表現の仕様/ヘルプをよく読むことだね。
それより、何をしたいのか具体的に書いた方がいいと思う。
0495461
2013/09/12(木) 12:57:53.12ありがとうございます
>>493
ググってみます
>>494
渡されたエクセルのの文書と名簿がぐちゃぐちゃで
名前と思われる部分だけを全て切り取り
作った表に貼り直そうと思いまして
0496デフォルトの名無しさん
2013/09/15(日) 21:59:22.06Visual C++
●検索か置換か?
置換
●説明
同じ文字/文字列を3回以上繰り返してる物を1回にしたい
●対象データ→結果
IEEE→IE
うわあああああああ→うわあ
bbcdbcdbcdbcdd→bbcdd
あのあのあのあの→あの
0497デフォルトの名無しさん
2013/09/16(月) 00:41:04.18C++ではなくJavaの例で悪いが
str.replaceFirst("(.+?)\\1{2,}", "$1")
0498デフォルトの名無しさん
2013/09/16(月) 14:23:01.62非決定性にすればよいのかな
bbcdbcdd も解だし。
「ああああいあいあい」の変換も「ああい」なのか「あい」でもよいのか、ちょっと曖昧。
0499デフォルトの名無しさん
2013/09/16(月) 14:36:25.56「bbcdbcdd」と「あい」は、どうしてそうなるの?
0500デフォルトの名無しさん
2013/09/16(月) 14:49:17.65「ああああいあいあい」→「あいあいあい」→「あい」
でも正規表現による置換の話だから、「あいあいあい」となるのを期待するよね。
それ以上は置換されなくなるまで繰り返しやがれ、って感じかな。
0501デフォルトの名無しさん
2013/09/16(月) 14:59:20.24dbc が3回繰り返されているからそういう選択もある。
0502デフォルトの名無しさん
2013/09/16(月) 15:00:57.68後半を先に置換すると ああい になる。
0503502
2013/09/16(月) 15:03:11.970504デフォルトの名無しさん
2013/09/16(月) 15:24:53.76なるほどなるほど。
>>502-503
そうです。
まあ一般的な正規表現による置換をするって話ですから、
後方からとか、一発で複数回置換とかは無いよね。
0505デフォルトの名無しさん
2013/09/22(日) 12:42:47.89EMEditor、サクラエディタ
●検索か置換か?
検索
●説明
最短マッチ(非貪欲マッチ)したいのですが、貪欲マッチになっています。貪欲、、非貪欲がそもそも分かってない可能性もあります。
Webプログラム板の正規表現スレでもお聞きしたのですが、教えていただいたとおりでうまく行かなかったのでこちらにきました。
NN\s.*?VBNで検索してみました。最初のNNからマッチしてしまいます。
●対象データ
In_IN Israel_NNP ,_, freedom_NN of_IN opinion_NN and_CC risk_NN taking_NN are_VBP strongly_RB supported_VBN ._.
●希望する結果
NN are_VBP strongly_RB supported_VBNの部分だけにマッチして欲しいのですが。
In_IN Israel_NNP ,_, freedom_NN of_IN opinion_NN and_CC risk_NN taking_NN are_VBP strongly_RB supported_VBN ._.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
0506505
2013/09/22(日) 12:44:40.53●希望する結果
NN are_VBP strongly_RB supported_VBNの部分だけにマッチして欲しいのですが。
0507デフォルトの名無しさん
2013/09/22(日) 12:56:23.26例示がもっともっともっと欲しいなあ。
その条件だけだと、"NN are_VBP strongly_RB supported_VBN" で
検索すればOkということになってしまうよ。
0508507
2013/09/22(日) 12:58:39.870509507
2013/09/22(日) 13:07:48.95NN\s((?!NN).)*VBN
でOk。
サクラエディタ Ver. 2.0.5.0
EmEditor Professional Ver4.13(古い…)
で確認。
0510507
2013/09/22(日) 13:19:37.69NN are_VBP strongly_RB supported_VBN_RB supported_VBN
みたいなときに全体にマッチさせたくなければ、非貪欲マッチを使って
↓これで。
NN\s((?!NN).)*?VBN
0511デフォルトの名無しさん
2013/09/22(日) 13:24:55.01サクラエディタ本体と正規表現DLLのバージョンを書いて下さい
\sの挙動に影響します
0512507
2013/09/22(日) 13:41:44.44厳しいんだな(笑)
そう思ったけど、本体で識別くらいでエエかなと。自分も一応書いとくね。
サクラエディタ Ver. 2.0.5.0
bregonig.dll Ver.3.02 with Onigmo 5.13.2
\sの部分はお好みで半角空白とか[ \t]に変えてもいいよー。
0513デフォルトの名無しさん
2013/09/22(日) 14:58:11.12OKでした。ありがとうございます。m(_ _)m
なるほど。勉強になりました。
EMeditor Free 6.00.4で確認しました。
>>511
すみませんDLLバージョンの確認方法を教えてもらえれば助かりますが。。。そんなレベルでつ (汗
0514デフォルトの名無しさん
2013/09/23(月) 15:35:32.970515デフォルトの名無しさん
2013/09/23(月) 21:46:18.10設定メニュー→共通設定→検索タブ
http://sakura-editor.sourceforge.net/htmlhelp2/HLP000148.html
ここで正規表現ライブラリ指定の次の行でDLL名とバージョンが確認できます。
0516デフォルトの名無しさん
2013/09/24(火) 01:18:12.51ありがとうございます。
サクラエディタ Ver. 2.0.4.0
bregonig.dll Ver.3.01 with Onigmo 5.13.0
でした。
0517デフォルトの名無しさん
2013/09/24(火) 03:03:17.64多分言っている意味がわからないと思うけど、
テキスト全部が揃ってないと使えない
正規表現ライブラリじゃなくて、
データがストリーミングで流れてくるものに対して、
途中でマッチしたらなにか処理をして
マッチしなければ(マッチしないことが確定すれば)
その時点でデータを吐き出すやつ。
0518デフォルトの名無しさん
2013/09/24(火) 03:08:24.940519デフォルトの名無しさん
2013/09/24(火) 03:29:07.50これで関連情報も探せそう。
ありがとう
0520デフォルトの名無しさん
2013/09/24(火) 09:51:16.860521デフォルトの名無しさん
2013/09/24(火) 21:40:40.82JavaやC++なんですね。
ありがとうございます。
0522デフォルトの名無しさん
2013/09/24(火) 22:49:21.480523デフォルトの名無しさん
2013/09/24(火) 22:59:58.79Perlでも実装できそうなものなんだが
0524デフォルトの名無しさん
2013/09/26(木) 05:02:24.42おかげでできたよ。
まず、match_partialという関数名をヒントにして調べたら、
一般的にはpartial matchなどと言われるらしいね。
で、pcreがその機能を持っている。
http://www.gammon.com.au/pcre/pcrepartial.html
今回の自分の目的はnodeで使うことなんで
pcreバインドがあればいいというわけで見つけたnode-pcre。
他の言語でもpcreバインドがあれば行けるだろう。
https://github.com/mscdex/node-pcre
https://github.com/mscdex/node-pcre/blob/master/lib/pcre.js
↑定数と値の意味
これを参考に、
var PCRE = require('pcre').PCRE;
var re = new PCRE("test");
console.log(re.exec("te", 0, PCRE.PCRE_PARTIAL));
を実行したら-12 (PCRE.PCRE.PCRE_ERROR_PARTIAL)が返って来た。
var re = new PCRE("test");
console.log(re.exec("tea", 0, PCRE.PCRE_PARTIAL));
だとnullが返ってくる。
0525デフォルトの名無しさん
2013/09/26(木) 21:37:41.97Visual Studio 2012
●検索か置換か?
検索
●説明
<>の中にある文字を順に検索していく方法を探しています
↓の2行の文章では
これは<りんご>です。
これは<100円玉>です。
エディタで<.*>で検索すれば、
<りんご>、<100円玉>がヒットするのですが
これは<りんご>です。これは<100円玉>です
こんなように一行のときに<.*>で検索すると
<りんご>です。これは<100円玉>
というようにヒットしてしまいます
●求める結果
一行の場合でも、<りんご>、<100円玉>というように個別に
ヒットさせたいです
そのための検索キーワードは何になるでしょうか
0526デフォルトの名無しさん
2013/09/26(木) 21:46:02.72<.*?>
0527デフォルトの名無しさん
2013/09/26(木) 21:57:32.86ありがとうございます!
無事いけました!
0528デフォルトの名無しさん
2013/09/26(木) 22:51:32.84サクラエディタ
●検索か置換か?
置換
●説明
1行の中に同じ単語が2連続しているのを1つだけにしたいです。
●対象データ
appleapple
orangeorange
grapegrape
●希望する結果
apple
orange
grape
よろしくお願いします。
0530デフォルトの名無しさん
2013/09/26(木) 23:19:40.410531デフォルトの名無しさん
2013/09/26(木) 23:38:49.64置換できました。
本当にありがとうございます!
ananがanになるようなケースはめったになく、
別システムでチェックできるのであったら手動で戻します。
0532デフォルトの名無しさん
2013/09/26(木) 23:47:16.00それは+のとこを{3,}とか適当な数字に直せばいいんでねえの
0533529
2013/09/27(金) 00:30:37.42と申されましても私には良いか悪いか分かりませぬ。
何文字になろうが、意図しない置換が行なわれる危険は残るので。
逆に、意図した置換が行なわれなくなる危険も。
>>531
という指摘がありましたので、
\b([a-zA-Z]{3,})\1\b
このようにすれば3文字×2以上のみにヒットするようになります。
これでananもTOTOも安心!
0534デフォルトの名無しさん
2013/09/27(金) 11:17:53.12>>533
少し遅くなりましたがありがとうございます。
数字や一部の記号を含む5文字以上のユーザIDなので、
\b([a-zA-Z0-9_-]{5,})\1\b
という形で使わせて頂きました。
0535デフォルトの名無しさん
2013/10/05(土) 23:35:47.41前後が数字になっている","だけにマッチするのって正規表現だけでできるの?
"[0-9],[0-9]だと前後の数字にもマッチしちゃうよね。
0536デフォルトの名無しさん
2013/10/05(土) 23:53:43.59正規表現だけでできるよ
正規表現 戻り読み
正規表現 先読み
で検索
0537デフォルトの名無しさん
2013/10/05(土) 23:59:54.47サンクス
勉強します
0538デフォルトの名無しさん
2013/10/06(日) 00:04:41.17>"[0-9],[0-9]だと前後の数字にもマッチしちゃうよね。
置換ならマッチさせて問題ないんだよ。
ついでに 1,2,3,4 みたいなのに対応させるため先読みを入れてみる。
検索:(\d),(?=\d)
置換:\1(または、$1)
>前後が数字になっている","だけにマッチするのって正規表現だけでできるの?
戻り読みを使えばできるけど汎用性が劣るから、上記の方法がおすすめ。
0539デフォルトの名無しさん
2013/10/06(日) 00:24:18.23解くのが難しい、もしくは不可能な、
フェルマーの最終定理のような
正規表現問題を教えて下さい。
なお、質問の目的はこのような種類の問題であれば
正規表現で頑張るのは諦めてさっさと別の
アプローチに変更した方がいいという判断の
材料にしたいからです。
0540デフォルトの名無しさん
2013/10/06(日) 01:53:49.08\dは環境によっては(Unicode対応以降のPerlや鬼車とか)、
全角数字にもマッチしちゃうから、環境を明記してない質問には
[0-9]で回答した方が無難だよ
0541デフォルトの名無しさん
2013/10/06(日) 02:12:00.76そうなのか、ありがとう。きっと\wもだよね。
しかし余計なお世話的仕様が一般化してるよなあ。
>>538
ということで、より
汎用性を高めるとこうなります。
検索:([0-9]),(?=[0-9])
置換:\1(または、$1)
0542デフォルトの名無しさん
2013/10/06(日) 12:39:09.250543デフォルトの名無しさん
2013/10/06(日) 13:33:39.33ケースではなく以下の理由で、実用には常に戻り読みを避けた「汎用的な正規表現」を使います/教えます。
・ JavascriptやWSH、エディタなど、戻り読みが無い環境は多い。
・ 先読みまでサポートしたものを「汎用的な正規表現」の環境と思っている。
・ 初心者は安易に戻り読みを使うより、「汎用的な正規表現」で置換などのテクニックを磨いた方が応用が利く。
・ 戻り読みは制約が多く、よく理解していないとハマりやすい。
・ (今回は単純だけど)戻り読みが必要なほどの正規表現は往々にして複雑すぎる。その場合は正規表現一本で済ますことを再考すべき。
0544デフォルトの名無しさん
2013/10/06(日) 14:23:42.72「汎用的」って言葉が曖昧だし、その割に明確にプラスみたいに語ってるし。
0545デフォルトの名無しさん
2013/10/06(日) 14:46:38.94s/([0-9]),(?=[0-9])/$1/g
を思いつけるようになる訓練をしろ、というのは初心者には辛いのでは
正規表現である程度以上のことをしようと思ったら、こういうテクニックも重要なのはわかるけど、
むしろ中級者以上向けじゃないか?
0546デフォルトの名無しさん
2013/10/06(日) 17:14:08.91正規表現を始めてすぐ、特定するのに困ったとき正規表現一覧を見てすぐに使えたし
0547デフォルトの名無しさん
2013/10/06(日) 18:26:24.50ただ今回の質問者は「正規表現に非マッチ指定がひょっとしてあるのでは」というイメージを始めから持ってるから、
先読みや戻り読みを理解できる素養はあるように思われる
0548デフォルトの名無しさん
2013/10/06(日) 18:44:04.56が、必要な場面に遭遇してない人ならコマンド一覧を見たって
「へーこんなのあるんだ。何に使うんだろ?」って感じるだけだろう
0549デフォルトの名無しさん
2013/10/06(日) 22:39:53.25冗長になると思って端折ってしまったのは良くなかった。
「『基本的な正規表現』のみを使用した汎用的なパターン」と言うべきだった。
・ 先読みまでサポートしたものを『基本的な正規表現』の環境と思っている。
ですね。もちろんプラスだと思ってるよ。
>>545>>546
そうかもしれない。けど、先に戻り読みを知るよりはずっと良いと思う。
>>547
完全に同意する。
同様に、[0-9],[0-9]のパターンを完全独力で導き出したのだとしたら、かなりセンスいいよね。
それが出来るなら置換マジックもすぐ理解できると思った。
ついでに言うと、「マッチはさせない検索条件」=「文字ではなく位置にマッチする検索条件」
だよね。大抵これが解説されておらず、学習者を混乱させる原因になっている。
0550デフォルトの名無しさん
2013/10/06(日) 23:18:54.68初心者にとってかなり難しいものなら・・
http://funcchan.blog16.fc2.com/blog-entry-39.html
普段から正規表現を触ってる人なら3分でループ展開まで出来ちゃうけどね。
0551デフォルトの名無しさん
2013/10/06(日) 23:31:28.62普段何やってるの?
関数にするから、同じ正規表現を書くなんて
めったにないはずだし、
なかなか覚えられるものじゃないはずなんだが。
0552デフォルトの名無しさん
2013/10/06(日) 23:54:20.30自然言語で書かれたウェブサイトを解析するアルゴリズムの研究開発
0553デフォルトの名無しさん
2013/10/06(日) 23:56:17.740554デフォルトの名無しさん
2013/10/07(月) 00:03:14.04>ついでに言うと、「マッチはさせない検索条件」=「文字ではなく位置にマッチする検索条件」
>だよね。大抵これが解説されておらず、学習者を混乱させる原因になっている。
確かにそうかもな。
手持ちのPerlやRubyの解説本を読んだけど説明不足なのが多いと思った。
行頭とか行末について説明する時に一緒に解説するといいのかもね。
これができるとエディタとかの置換でも応用効きそうだし。
0555デフォルトの名無しさん
2013/10/07(月) 01:29:47.61普通のWebデベロッパだが至るところで使いまくりだけど…?
ちょっとした文字列の解析なんて至るところで登場するだろ
0556デフォルトの名無しさん
2013/10/07(月) 01:48:12.840557デフォルトの名無しさん
2013/10/07(月) 02:09:14.180558デフォルトの名無しさん
2013/10/08(火) 01:20:35.79まさか、同じ正規表現を
何回も書いていたりしないよね?
DRY
0559デフォルトの名無しさん
2013/10/08(火) 14:38:31.50grep,sed,awk。基本ワンライナーで使い捨て。用途はやっぱりログを見るのが多いかな。あとはウェブスクレイピングとか。毎回違うし、ライブラリ化しない。
0560デフォルトの名無しさん
2013/10/08(火) 16:29:30.57難しいものは共通化して簡単なものはリテラル
0561デフォルトの名無しさん
2013/10/08(火) 18:15:42.63関数にしちまえよ。
0562デフォルトの名無しさん
2013/10/08(火) 20:35:25.89>>550の問題なんか見た瞬間に簡単な問題だなって思う程度の問題だよ?
俺なら>>550のサイトに書いてある正規表現よりずっといい正規表現を作れる。
まったく別のアプローチからね。
>>8の本読めば解けるようになるから正規表現が好きなら読めばいいと思うよ。
0563デフォルトの名無しさん
2013/10/08(火) 22:02:57.90ぜひご披露願います。もちろん先読みを使わずに、だよね?
自分は簡単だとは思わなかったな。ループ展開っていうのも分からない。
現物合わせの場合分けでは無いということかしら。
それと、このページかなり昔に見たな〜。
その時も思ったけど、練習用にテスト文字列が用意されてればいいのに。
ということで用意しました。
AA0000AA
AA000AAA
AA00A0AA
AA00AAAA
AA0A00AA
AA0A0AAA
AA0AA0AA
AA0AAAAA
AAA000AA
AAA00AAA
AAA0A0AA
AAA0AAAA
AAAA00AA
AAAA0AAA
AAAAA0AA
AAAAAAAA
0564デフォルトの名無しさん
2013/10/08(火) 22:33:21.30>ぜひご披露願います。
>>8の本の270ページ前後を読んで。俺の言ってるアプローチというのはこれのことだから。
俺が本の内容をココに書いたら営業妨害になるんで・・
>もちろん先読みを使わずに
yes
>ループ展開っていうのも分からない
正規表現 ループ展開 でぐぐれば出てくるよ。
0565デフォルトの名無しさん
2013/10/08(火) 22:44:48.06いや、とりあえず↓この模範解答だけ教えてよ。
>俺なら>>550のサイトに書いてある正規表現よりずっといい正規表現を作れる。
>まったく別のアプローチからね。
この問題を解決する正規表現パターンを提示することは営業妨害にならないでしょ。
0566デフォルトの名無しさん
2013/10/08(火) 22:52:37.040567デフォルトの名無しさん
2013/10/08(火) 23:20:17.38あなたは件のサイトの解法とはまったく別のアプローチからずっといい正規表現を作れるけど、
作るのと検証にはかなり時間がかかるからヤダ、っていうことかな。
「3分でループ展開まで出来ちゃう」人とは別人だったのか。残念。
しかし、口ばっかりで自前の正規表現を出さない人が増えたなー。
私がこのスレを見始めた頃は、ふらりと現れてすごい正規表現を置いていく兄さん方がたくさん
いた記憶があるんだけど。
一つ疑問を投稿すれば分かるまで正規表現エンジンの動きを解説してくれて、とても感謝した。
自分がネット独学で十分な技量を身に付けてしまったから、相対的にそう思えるのかな。
でも、O'Reillyの本読んで学問的に探求できるほど頭良くないんだよね、残念ながら。
0568デフォルトの名無しさん
2013/10/09(水) 00:11:26.19やっくんの追悼にコレ見るのに忙しいんだよ・・おまえも見ろよ・・
http://www.youtube.com/watch?v=DhA8TUn_DVY
見たら作ってあげるよ。
0569デフォルトの名無しさん
2013/10/09(水) 00:50:23.49お笑い詳しくないし、やっくんのこともほとんど知らんけど、他界したという速報を
聞いたときショックだったわ。なんか親しみある人だった。
てか、声優としてキャリアあったのか。
>見たら作ってあげるよ。
私に見ろってことかい!
作る気あるならすぐに出す、無いなら引っ張らない。どっちかにせい。
0570デフォルトの名無しさん
2013/10/09(水) 01:20:10.110571デフォルトの名無しさん
2013/10/09(水) 01:33:01.12エディタだとダメかも知れないけど
^AA.*AA.*AA$|(.*)
で$1を使うという方法がある
0572デフォルトの名無しさん
2013/10/09(水) 03:15:53.16/\___/ヽ
(.`ヽ(`> 、 /'''''' '''''':::::\
`'<`ゝr'フ\ + |(●), 、(●)、.:| +
⊂コ二Lフ^´ ノ, /⌒) | ,,,ノ(、_, )ヽ、,, .::::|
⊂l二L7_ / -ゝ-')´ .+ | `-=ニ=- ' .::::::| +
\_ 、__,.イ\ + \ `ニニ´ .:::/ +
(T__ノ Tヽ , -r'⌒! ̄ `":::7ヽ.`- 、 ./|
ヽ¬. / ノ`ー-、ヘ<ー1´| ヽ | :::::::::::::ト、 \ ( ./ヽ
\l__,./ i l.ヽ! | .| ::::::::::::::l ヽ `7ー.、‐'´ |\-、
0573571
2013/10/09(水) 09:41:10.95もっと絞らなきゃいけなかったね
簡単だから修正して
考え方
文字列xyzを含まない → 文字列xyzを含むものを除いた残り
.*xyz.*|(.*)
0574デフォルトの名無しさん
2013/10/09(水) 10:13:55.36だからレギュラーが取れないんだよ。補欠表現者ども。
有益な情報のみ貼り付けろ。
それ以外はてめーのケツの穴にでも突っ込んどけ補欠ども。
0575デフォルトの名無しさん
2013/10/09(水) 14:57:53.72正規表現しか書けないぞ。
カネが無いなら初版の中古本を買うといい。びっくりするくらいの値段で買えるぞ。
http://www.amazon.co.jp/dp/4900900451
内容はおまえが思ってるほど難しくはない。基本的なことを繰り返し何度もしつこく
説明している印象が強い。ただプログラミング経験者でないとつらい。
あと他人に当り散らすのはやめろ。正規表現道を極めたいなら人間的にも成長しろ。
感情をコントロールしろ。周りの人間を威嚇するな、バカ犬じゃあるまいし。
0576馬鹿1号
2013/10/12(土) 04:56:33.09正規表現練習ツールってのが出てくると思うけど
あれ俺が作ったんだわ。で、今、ソース非公開にしてるけど
理由は、C#を勉強していて正規表現ってのを使いこなせる
ように練習ソフトって無いかなーと思ってググったけど無いんで
じゃ、作っちゃおと思ったのがきっかけで、そんで作ったは良い
けど全然自分で使ってなくて、で、改良していったのは良いんだ
けど、今、見直してもソースがグチャグチャでコメントもろくに
いれてないしで、正直、恥ずかしいからソース非公開にしたん
だけど、やっぱソース公開したほうが良いのかな?
恥ずかしいんだよなー
スレ違いだけど、公開したほうが良いですかね?
0577デフォルトの名無しさん
2013/10/12(土) 06:01:54.21Visual REGEXPってお前が作ったのか。すげーな。
http://laurent.riesterer.free.fr/regexp/
0579デフォルトの名無しさん
2013/10/12(土) 07:03:40.490580デフォルトの名無しさん
2013/10/12(土) 12:00:06.080581デフォルトの名無しさん
2013/10/12(土) 16:33:55.552冊売れてるw
0582デフォルトの名無しさん
2013/10/12(土) 18:20:46.78思ったより安かったので、つい横からポチった俺…
0583デフォルトの名無しさん
2013/10/12(土) 19:10:13.27http://d.hatena.ne.jp/kazu-yamamoto/20090617/1245202311
0584デフォルトの名無しさん
2013/10/13(日) 16:02:51.650585デフォルトの名無しさん
2013/10/13(日) 16:50:12.81問題の主旨は
「htmlソースの中から <p>xyzを含まない文字列</p> を検索したい」
みたいな場合に使える正規表現を作ること。
htmlソースの他の部分にxyzがあっても動作することが求められる。
>>571は手段の1つとしてはアリ。
欠点は全ての行にマッチしてしまうので置換結果をテストしないと
求める行かどうか分からない。つまり二度手間になる。
0586デフォルトの名無しさん
2013/10/13(日) 17:44:46.10全部の行をそっくりコピペで貼付けたあと、必要ない行を一行ずつテストして
消していいならどんな複雑な置換でもできちゃうよ。
0587デフォルトの名無しさん
2013/10/13(日) 18:19:02.66そういうことに気付くのも実用上は重要だったり。
0588デフォルトの名無しさん
2013/10/13(日) 18:21:34.53[^A]Aを軸にして作ることも出来る。これが別のアプローチ。
興味のある人は作ってみてね。
0589デフォルトの名無しさん
2013/10/13(日) 23:35:14.37>>571と>>573は同一人物で>>571は欠点があるから修正してねってのが>>573じゃねーの?
こういうことだろ
^AA.*AA.*AA$|^(AA.*AA)$
0590デフォルトの名無しさん
2013/10/13(日) 23:52:56.83>>585はそれを理解したうえで書いたものだけど、どう誤解されたのか気になる。
0591デフォルトの名無しさん
2013/10/14(月) 00:02:00.73>htmlソースの他の部分にxyzがあっても動作することが求められる。
>欠点は全ての行にマッチしてしまうので置換結果をテストしないと
>求める行かどうか分からない。つまり二度手間になる。
どうして?
0592デフォルトの名無しさん
2013/10/14(月) 00:33:04.61<html>xyz<p>ABC</p></html>
から
<p>xyzを含まない文字列</p>
を検索したいとする。(この場合は <p>ABC</p> をマッチさせたい。)
こういう場合に .*xyz.*|(.*) では役に立たない、というのは分かるかな?
>>550のサイトではこういう場合に使える正規表現の作り方を解説している。
逆に言えばこういう場合に使えない正規表現は問題の主旨から外れてしまう。
0593デフォルトの名無しさん
2013/10/14(月) 00:51:01.14^AA.*AA.*AA$|^(AA.*AA)$
を理解した上でってことだったから重ねて質問したまで
つまり
<p>.*xyz.*</p>|(<p>.*</p>)
を想定した上での質問
0594デフォルトの名無しさん
2013/10/14(月) 00:52:01.71>二度手間になる。
ごめん、これはプログラムの中で正規表現を使うときの話ね。
テキストエディタで使うときは置換結果をテストする必要がないので
(いらない行が空行になるので一目瞭然だ)二度手間にはならない。
0595デフォルトの名無しさん
2013/10/14(月) 01:10:29.07>それを理解したうえで書いたものだけど
どっちかがウソだよね?
0596デフォルトの名無しさん
2013/10/14(月) 01:29:12.68自分でおかしいと思わないのかな?
0597デフォルトの名無しさん
2013/10/14(月) 02:12:48.03正規表現でマッチングしたいっていうところなんですが、
ソースが
まどかほむらマミさんまどかマミさんまどか
とあった時に、最初の「まどか」から二回目の「まどか」までを選択したいんです。
まどかほむらマミさんまどか
この範囲です。
ただ、このとき、ほむらとマミさんは不確定な内容だもんで、正規表現を使いたいというところです。
このときに、
まどか.+まどか
でマッチングすれば
まどかほむらマミさんまどか
が出て来てくれると思ったんですが
最後のまどかまで拾ってしまいます。
上のソース、最初から最後まで拾ってしまいます。
.+の後の要素が始めて出てきた時点で、そこまでを範囲とするような指定はできませんでしょうか?
0598デフォルトの名無しさん
2013/10/14(月) 02:18:23.850599デフォルトの名無しさん
2013/10/14(月) 02:19:36.070600デフォルトの名無しさん
2013/10/14(月) 02:27:18.28ありがとうごさいます。バッチリです。
>>599
因果の糸が絡むと「まどか」が増えそうなのでやめておきますね。
0601デフォルトの名無しさん
2013/10/14(月) 04:09:09.190602デフォルトの名無しさん
2013/10/14(月) 14:33:53.13>を想定した上での質問
なにが?
>どっちかがウソだよね?
どうして?
0603デフォルトの名無しさん
2013/10/14(月) 15:00:10.080604デフォルトの名無しさん
2013/10/14(月) 22:13:23.08これが分かってないんだね。<p>.*xyz.*</p>|(<p>.*</p>)でも使いものにならないんだよ。
それを分からずに人のことを誹謗中傷するとか・・
0605デフォルトの名無しさん
2013/10/15(火) 03:06:49.12全行にマッチしないと言ってる人は何を対象に適用させる話をしてんだろう?そんな話はしてないのにね。
0606デフォルトの名無しさん
2013/10/15(火) 15:28:01.48それより.*xyz.*|(.*)の考え方じゃないのなら、
>俺なら>>550のサイトに書いてある正規表現よりずっといい正規表現を作れる。
>まったく別のアプローチからね。
をぜひ披露してもらいたいな
まさか、>>588のことじゃないだろうしね
0607デフォルトの名無しさん
2013/10/15(火) 19:57:35.480608デフォルトの名無しさん
2013/10/15(火) 21:28:48.72これは酷い
0609デフォルトの名無しさん
2013/10/16(水) 02:11:37.860610デフォルトの名無しさん
2013/10/18(金) 01:20:07.44perlで何故かこれが動いた。
0611デフォルトの名無しさん
2013/10/18(金) 01:23:06.98/z$/がマッチしない
0612デフォルトの名無しさん
2013/10/18(金) 01:30:53.000613デフォルトの名無しさん
2013/10/18(金) 04:27:50.63マッチするたびに痴漢されて慰謝料で生活費を荒稼ぎするくらいの気概がないと
0614デフォルトの名無しさん
2013/10/18(金) 18:50:19.800615デフォルトの名無しさん
2013/10/18(金) 19:00:48.580616デフォルトの名無しさん
2013/10/19(土) 02:16:22.39/z\r$\n^/m
$は\rと\nの間にマッチ
0617デフォルトの名無しさん
2013/10/19(土) 23:32:43.05winのコマンドプロンプトだと動くね。
C:\>perl -e "if('123' =~ \"(?^:2)\"){print \"match\";}"
しかし同じコードをperl test.plで起動しても動かない。
0618デフォルトの名無しさん
2013/10/20(日) 05:43:49.29こちらではplでも動作した。if('123' =~ "(?^:2)"){print "match";}
0619デフォルトの名無しさん
2013/10/20(日) 09:40:06.18http://www.kt.rim.or.jp/~kbk/regex/regex.html#NOTINCLUDED
で作ってみた。
(((([^x]*)*(x+[^y][^x]*)*)*)*(x+[^z][^x]*)*)*
実験してみたらxyzを含む文字列にマッチ。駄目じゃん。
0620デフォルトの名無しさん
2013/10/20(日) 10:16:31.31こういう無駄が多いね。
0621デフォルトの名無しさん
2013/10/20(日) 10:53:48.13<select id="select_id">
<option value="option_value1">あ
<option value="option_value2">い
<option value="option_value3">う
</select>
selectタグのidとその中にあるoptionタグのvalueを
$hash->{select_id} = [
option_value1,
option_value2,
option_value3,
]
のようなデータを作っていくようなコードではどのような正規表現を使えばいい?
実際のHTMLと同じで、selectやoptionにはその他の属性があったり
selectは複数あったりするという前提。selectの閉じタグがないとか
壊れたHTMLまでは対応しなくていい。
一旦select+optionを抜き出してから、その中のoptionを探すか、
正規表現一つで一度に処理するかなやんでるんだ。
0622デフォルトの名無しさん
2013/10/20(日) 12:32:04.000623デフォルトの名無しさん
2013/10/20(日) 12:39:19.60otbeditで動かしてみたらotbeditが異常終了したw
0624デフォルトの名無しさん
2013/10/20(日) 12:40:06.61それは他の処理をするプログラムの一部だから。
全体的にperlで書かれていて、この部分だけ
perl以外を使おうとする発想は普通ない。
0625デフォルトの名無しさん
2013/10/20(日) 12:53:38.44正規表現は俺が作るなら・・正規表現を使わずに文字列操作関数で作る。動作が早いし。
0626デフォルトの名無しさん
2013/10/20(日) 13:14:23.34さくっと取り出したいのよ
selectのid部分とoptionのvalue部分を
0627デフォルトの名無しさん
2013/10/20(日) 13:23:16.90\Gは文頭と前回マッチした最後の位置にマッチする。
/cは前回マッチした位置から検索を始めるオプション。
0628デフォルトの名無しさん
2013/10/20(日) 15:15:35.64そこまで条件つけるならHTMLパーサ使えば。
0629デフォルトの名無しさん
2013/10/20(日) 18:19:44.18了解調べてみる。
>>628
メインの処理の最後に挟み込む、
簡易なフィルタ扱いなので、
なるべく軽くしたい。
0630デフォルトの名無しさん
2013/10/20(日) 20:39:00.98ならそういう省略されたhtmlとか諦めた方がいいんじゃない。
0631デフォルトの名無しさん
2013/10/20(日) 23:14:03.260632デフォルトの名無しさん
2013/10/21(月) 00:41:04.91省略されたhtmlってなんのことですか?
0633デフォルトの名無しさん
2013/10/21(月) 03:33:17.960634デフォルトの名無しさん
2013/10/21(月) 06:56:03.620635デフォルトの名無しさん
2013/10/21(月) 11:40:02.69^
[^x]*
(
x+
(
[^xy]
|y[^xz]
)
[^x]*
)*
(x+y?)?
$
0636デフォルトの名無しさん
2013/10/21(月) 11:49:37.40正規表現クックブック
http://www.amazon.co.jp/dp/4873114500
0637デフォルトの名無しさん
2013/10/22(火) 01:36:42.83これもAAのと同じように別のアプローチで違った正規表現が作れる。
これ自体ももっと早く動くように最適化する余地が残っている。
>>634と>>572、どっちが良い正規表現か、という問題もある。
本を読めばこんなのが簡単に分かる。読まない奴はそこまでだ。
0638デフォルトの名無しさん
2013/10/22(火) 05:51:45.720639デフォルトの名無しさん
2013/10/22(火) 06:31:27.14回答例を一つも出さないとか理解できません
大口叩いてるだけでは本に対する印象が悪くなり逆効果です
0640デフォルトの名無しさん
2013/10/22(火) 12:15:43.300641デフォルトの名無しさん
2013/10/23(水) 00:29:24.06任意の文字列を"0000000123"のように置き換えるのって簡単にできますか?
置き換える方の文字列は3桁じゃなくて、いろんな数字があり得ます。
C言語でいうsprintf(%10d, 123)みたいなフォーマットを正規表現で簡単に
再現できますか?
0642デフォルトの名無しさん
2013/10/23(水) 00:53:43.42(00000000000000の桁数)-(123の桁数)の0を用意して123を引っ付ければ良いだけでは
0643デフォルトの名無しさん
2013/10/23(水) 00:56:10.120644デフォルトの名無しさん
2013/10/23(水) 01:10:22.77A:最初からそういう文字列作ればいい。
なんでも通用する最強の回答だなw
0645デフォルトの名無しさん
2013/10/23(水) 01:14:58.01誰が言ってるの?
0646デフォルトの名無しさん
2013/10/23(水) 01:50:49.38replace(/(\d+)/g,"0000000000$1").replace(/\d*(\d{10})/g,"$1")
と2回置換ではダメ?(10桁より多い数字列があったら頭がちょん切れるけど)
0647デフォルトの名無しさん
2013/10/23(水) 01:57:25.65質問は
「簡単に出来るか?」
その答えにふさわしい回答は
「はい」
か
「イエス」
だ。
0648デフォルトの名無しさん
2013/10/23(水) 01:59:48.650649デフォルトの名無しさん
2013/10/23(水) 02:00:19.350650デフォルトの名無しさん
2013/10/23(水) 02:15:07.37だめ。一回でできますので頑張ってください。
0651デフォルトの名無しさん
2013/10/23(水) 02:49:07.910652デフォルトの名無しさん
2013/10/23(水) 03:05:44.15こんなことしてる時間と熱意を自分のために使うべきという発想が無いから。
0653デフォルトの名無しさん
2013/10/23(水) 03:10:30.840654デフォルトの名無しさん
2013/10/23(水) 03:15:44.15真面目に考えてる時間を別のものに振り替えるものがない
ボケーとしてるくらいなら考えてた方がマシ
0655デフォルトの名無しさん
2013/10/23(水) 03:22:14.860656デフォルトの名無しさん
2013/10/23(水) 03:30:58.17暇つぶしのネタが増えた
0657デフォルトの名無しさん
2013/10/23(水) 03:44:03.020658デフォルトの名無しさん
2013/10/23(水) 03:45:34.70s/(\d+)\d{3}/${1}987/
0659デフォルトの名無しさん
2013/10/23(水) 08:57:06.18何をエンコしてるか、そこが重要だ。のんのんびよりだったら許す。
0660デフォルトの名無しさん
2013/10/23(水) 09:21:50.750661デフォルトの名無しさん
2013/10/23(水) 20:44:07.52クソワロタw
0662デフォルトの名無しさん
2013/10/23(水) 22:06:06.77Visual C#
●検索か置換か?
検索
●説明
同じ文字が5回以上繰り返されている箇所のある行を検索したい
●対象データ→結果
うわあああああい → マッチ
aaaaaaaa → マッチ
あいあいあい → マッチせず
0663デフォルトの名無しさん
2013/10/23(水) 23:09:26.570664デフォルトの名無しさん
2013/10/23(水) 23:37:53.07自演乙
0665デフォルトの名無しさん
2013/10/24(木) 01:19:42.05.*(.)\1{4}.*
Visual C#での動作は確認していない。
0666デフォルトの名無しさん
2013/10/24(木) 01:54:55.50> >>662
> .*(.)\1{4}.*
> Visual C#での動作は確認していない。
自分もC#での動作は確認してないけど
頭と尻の「.*」は無くてもいいと思う
0667デフォルトの名無しさん
2013/10/24(木) 02:07:48.740668デフォルトの名無しさん
2013/10/24(木) 02:18:39.07そこを厳密にしたいのなら前後に「^」と「$」をつけるべきかと
0669デフォルトの名無しさん
2013/10/24(木) 02:53:07.780670デフォルトの名無しさん
2013/10/24(木) 03:19:17.03マッチ範囲を検索語句のみか行全体にするかという話だよ?
それに、ヘタに「^」や「$」を付けると複数行テキストの文頭・文末になるぜっ!
>>669
十分ネタになってるからいいよ。
0671デフォルトの名無しさん
2013/10/24(木) 03:24:21.910672デフォルトの名無しさん
2013/10/24(木) 03:32:00.09理屈なしに批判だけでは分からんぞ。
0673デフォルトの名無しさん
2013/10/24(木) 03:34:08.77> マッチ範囲を検索語句のみか行全体にするかという話だよ?
俺には最初の質問は
> 同じ文字が5回以上繰り返されている箇所のある行を検索したい
これは普通にマッチした検索語句がある行を検索したい、って読めるけどな
検索を行全体にしたいてのは>>667の勝手な解釈では?
0674デフォルトの名無しさん
2013/10/24(木) 03:43:43.82だとすると、質問者が真に問うてたことはこういうことだと?
△ 同じ文字が5回以上繰り返されている箇所のある行を検索したい
○ 同じ文字が5回以上繰り返されている箇所を検索したい
0675デフォルトの名無しさん
2013/10/24(木) 03:48:51.490676デフォルトの名無しさん
2013/10/24(木) 06:17:55.74本人は親切のつもりで極悪コード貼るからたちが悪い。
0677デフォルトの名無しさん
2013/10/24(木) 07:34:10.45> まあ大抵の正規表現では行単位てのがデフォルトなんで
grepなら大抵のテキストエディタがそうだろうけど、
今回はプログラミング言語について質問してるんだから、
同じ文字が5連続以上続いている行全体を配列かハッシュにでも突っ込んで、
何らかの処理を行おうとしてるんじゃないの?
後はこの質問が行全体ではなく5連続以上の同じ文字のみにマッチさせたいということであれば、
{n,}の構文が.net Frameworkの正規表現でサポートされていないといけないんだけど、
{n,}で直前文字のn回以上の繰り返しがはサポートされてない環境も多いよね
0678デフォルトの名無しさん
2013/10/24(木) 09:01:24.67大変助かりました。自分なりに思考錯誤してたんですが、うまくいかず
>>677で指摘されてるとおり、今回は行全体を抽出して
それをある処理にかけたいと思っていた次第です。
言葉足らずで申し訳ないです。
ですので、教えていただいた正規表現を元に
^.*(.)\1{4,}.*$
としたものを組み込んで試してみることにしました。
({n,}は.net Frameworkの正規表現でサポートされていると思います)
ありがとうございました
0679デフォルトの名無しさん
2013/10/24(木) 10:15:23.35説明するときは、↓このようにマッチ範囲も書くといいね。
らめぇぇぇぇぇぇっ! → 全体にマッチ
>^.*(.)\1{4,}.*$
あれ、>>677をよく読んだほうがいいな。そのままでも実害はないけど、
{4,}は「行全体ではなく5連続以上の同じ文字のみにマッチさせたい」ときだよ。
その場合は(.)\1{4,}とする。
「^」と「$」も気になるね。まあ使い方で問題が出なければヨシだが…。
あるだけ盛ればいいってもんじゃないから、きちんと理解して使ってみてね。
0680デフォルトの名無しさん
2013/10/24(木) 11:24:15.270681デフォルトの名無しさん
2013/10/26(土) 13:28:45.89サポートされてるね
ttp://msdn.microsoft.com/ja-jp/library/az24scfc(v=vs.110).aspx#quantifiers
ttp://msdn.microsoft.com/en-us/library/az24scfc(v=vs.110).aspx#quantifiers
{n,}
Matches the previous element at least n times
というかPerlフォロワーのモダンな正規表現でサポートされてないことはまずない
例外は{,m}だと思う
{0,m}や {1,m}で代用できるから正規表現エンジン側が実装する必要がないし
0682デフォルトの名無しさん
2013/10/27(日) 13:23:00.800683デフォルトの名無しさん
2013/10/27(日) 13:48:00.01>>8は英語版が2006/8発売だから最新版とはいえ情報が古くなってる・・。
偶然にも2006/8はrubyに採用された正規表現エンジン・鬼車が初めて公開された月でもある。
当然第三版には鬼車(鬼雲)の正規表現は載ってない。
0684デフォルトの名無しさん
2013/10/27(日) 14:27:51.39ゲゲゲの鬼太郎の猛霊八惨あたりが使いそう
0685デフォルトの名無しさん
2013/10/27(日) 14:53:56.690686デフォルトの名無しさん
2013/10/28(月) 08:41:50.69本物の柔道技じゃないんじゃまいか
0687デフォルトの名無しさん
2013/10/29(火) 20:44:29.720688デフォルトの名無しさん
2013/10/30(水) 05:42:53.26ところでこれの別解答は?
0689デフォルトの名無しさん
2013/10/30(水) 19:56:45.01●検索
●真ん中のAを否定 かつ Aが含まれる にマッチするか
●対象データ 3桁限定
ABC true
BAC false
CBA true
DEF false
.*1.* & ^.[^9].*
こんな正規を使ったのですができませんでした。
宜しくお願いします。
0690デフォルトの名無しさん
2013/10/30(水) 20:54:10.30まず、何でそんな正規表現を試そうと思ったのか理解不能
0691デフォルトの名無しさん
2013/10/30(水) 21:19:15.35こういうやつかな?
Javaでどう書くのか知らないけど。
0692デフォルトの名無しさん
2013/10/30(水) 21:21:37.570693デフォルトの名無しさん
2013/10/30(水) 22:03:05.57ありがとうございます。
でも、できませんでした。
http://java-regex-tester.appspot.com/
(1[^1].)|(.[^1]1)
012 false
102 true
021 false
右辺単独だとできるんですが
0694デフォルトの名無しさん
2013/10/30(水) 22:05:14.69あ、試してるクエリー確認せず張っちゃいました。。。
0695デフォルトの名無しさん
2013/10/30(水) 22:12:23.461[^1].|.[^1]1
これでいけた。
0696デフォルトの名無しさん
2013/10/30(水) 22:31:39.76プログラムで使うクエリーを色々試してるんですが、
条件が3、4個の複雑なクエリーだとどこが間違ってるのか、
頭がこんがらがってきちゃって
0697デフォルトの名無しさん
2013/10/30(水) 22:43:28.880698デフォルトの名無しさん
2013/10/30(水) 22:58:32.90それは数学を語るのにカシオの計算機知らないなんてな。と言っているように聞こえる。
0699デフォルトの名無しさん
2013/10/30(水) 23:52:42.02正規表現は数学ほど理論と実装が分離できてないんで当てはまらんよ。
つか少なくともエンジンの名前について話が逸れてる状態において、
「俺は〜ってエンジンは知らん!」ってのは無知の喧伝にしか見えん。
0700デフォルトの名無しさん
2013/10/31(木) 00:11:08.31程というのは程度の問題。つまりあなたの主観ということですね。私は初歩的な正規表現なら、エンジンの違いを意識する必要はないという主観です。
話題ではなく、>>692でスレへの参加を問題にしてましたので、それに対するレスです。
0701デフォルトの名無しさん
2013/10/31(木) 00:39:51.750702デフォルトの名無しさん
2013/10/31(木) 01:54:14.323桁の文字に対して、
ABCのいずれかが2つ以上マッチした場合trueを返したいのですが上手くいきません。
194
[841]{2,}
自分はこれでテストしたのですが、、、
http://java-regex-tester.appspot.com/
0703デフォルトの名無しさん
2013/10/31(木) 02:02:40.81お前さあ。。。ここで答えを聞くより先にやるべきことがあるだろ?
0704デフォルトの名無しさん
2013/10/31(木) 02:39:19.54できました。
グループは試したと思ったんだけどなぁ
0705デフォルトの名無しさん
2013/10/31(木) 07:24:55.440706デフォルトの名無しさん
2013/10/31(木) 08:02:43.930707デフォルトの名無しさん
2013/10/31(木) 09:38:20.190708デフォルトの名無しさん
2013/10/31(木) 09:39:40.430709デフォルトの名無しさん
2013/10/31(木) 09:53:50.26まるでそれを否定してるような言い方だけど
それはまさにそれのためでしょ何いってるの
0710デフォルトの名無しさん
2013/10/31(木) 10:47:33.51わらた
0711デフォルトの名無しさん
2013/10/31(木) 13:32:35.34>>611
0712デフォルトの名無しさん
2013/10/31(木) 17:37:50.76abc123def456
これのcと1の間とfと4の間だけに一致させる方法ないですかね?
"abc123def456".splitに投げたら["abc", "123def", "456"]が返ってくるのが理想です
後読みが使えたら(?<![0-9])(?=[0-9])でいけるんだけど使えなくて困る
0713デフォルトの名無しさん
2013/10/31(木) 18:12:54.07match(/\d*\D*/g)
で最後のマッチ項目は捨てるのではダメ?
0714713
2013/10/31(木) 18:17:28.96match(/[^$]\d*\D*/g).join().split(",");
0715デフォルトの名無しさん
2013/10/31(木) 23:34:14.220716デフォルトの名無しさん
2013/11/01(金) 06:33:15.71やっぱ http://www.oreilly.co.jp/books/9784873113593/ っしょ
0717デフォルトの名無しさん
2013/11/01(金) 19:29:35.790718デフォルトの名無しさん
2013/11/02(土) 14:04:08.27\Cって初耳なのでkwsk
0719デフォルトの名無しさん
2013/11/02(土) 15:11:28.83マルチバイト文字だろうが問答無用で1バイトにマッチ。
0720デフォルトの名無しさん
2013/11/02(土) 15:55:31.95あとどれを同種とみなすかで実装ごとに不安定になりそう。
0721デフォルトの名無しさん
2013/11/02(土) 16:11:46.870722デフォルトの名無しさん
2013/11/02(土) 17:46:07.83あ = E3 81 82
い = E3 81 84
\xE3\x81\C どっちにもマッチ
0723デフォルトの名無しさん
2013/11/02(土) 18:07:06.010724デフォルトの名無しさん
2013/11/02(土) 21:49:34.60http://d.hatena.ne.jp/atzy/20080910/p1
0725デフォルトの名無しさん
2013/11/02(土) 22:27:01.57文字バラバラにされたら溜まったもんじゃない。
0726デフォルトの名無しさん
2013/11/03(日) 11:08:00.323バイトで構成されている1文字にマッチ。$は誤作動の可能性があるので\z
0727デフォルトの名無しさん
2013/11/03(日) 13:02:38.590728デフォルトの名無しさん
2013/11/03(日) 13:09:13.01最初の\Zともう1つの\Zがマッチする位置が別の位置になる可能性がある。$も同じ。
\zは一か所にしかマッチしないのでそれを回避出来る。
0729デフォルトの名無しさん
2013/11/04(月) 00:17:22.810730デフォルトの名無しさん
2013/11/05(火) 19:05:54.94http://swatmac.info/?p=716
0731デフォルトの名無しさん
2013/11/06(水) 17:08:19.550732デフォルトの名無しさん
2013/11/06(水) 17:50:41.390733デフォルトの名無しさん
2013/11/06(水) 18:28:08.19マトリョーシカですね
わかります
0734デフォルトの名無しさん
2013/11/07(木) 13:10:19.70ネットの情報は初心者を中級者にすることは出来るけど
中級者を上級者にすることは出来ないと確信した。
ついでにperlの本も買うかな、激安中古本があればだけどw
0735デフォルトの名無しさん
2013/11/08(金) 19:25:12.92俺も今読んでる。完走目指して頑張ろうぜ。
0736デフォルトの名無しさん
2013/11/08(金) 23:57:02.81>>714
[^$] これはどういう意味でしょう
0737デフォルトの名無しさん
2013/11/09(土) 00:26:51.490738デフォルトの名無しさん
2013/11/09(土) 03:25:53.22文頭じゃないということを言いたいのかな。あまり見ない表現ではある。
0739デフォルトの名無しさん
2013/11/09(土) 04:06:33.86×文頭
○文末
0740デフォルトの名無しさん
2013/11/09(土) 06:30:07.34[] の中では $ は、$ 自身であって文末ではない。なので [^$] は $ 以外の任意の1文字。
[] の中は別文法。
0741デフォルトの名無しさん
2013/11/09(土) 07:31:16.650742デフォルトの名無しさん
2013/11/09(土) 12:14:26.95それ書いた者だけど、完全に間違いだから気にしないで
match(/\D+\d*|\D*\d+/g).join().split(",");
もっと良い書き方もあるんじゃないかと思うけど
まだ初心者だからこんな芸の無い書き方しかできないや
0743デフォルトの名無しさん
2013/11/09(土) 12:17:51.60最初の質問を見直せばよかった
0744デフォルトの名無しさん
2013/11/09(土) 12:30:48.06書いた方までわずらわせてしまってすみません。
ありがとうございました。
0745デフォルトの名無しさん
2013/11/09(土) 13:10:54.31/http:[/][/]/とかたまに使う。
0746デフォルトの名無しさん
2013/11/09(土) 14:35:02.620747デフォルトの名無しさん
2013/11/12(火) 18:03:10.73107.099-47.839 でマイナスの前で区切るため 107.099,-47.839 とカンマを
挿入したく思っています。 ※特定の文字の前に文字を挿入
検索文字列Aを [0-9]-[0-9] として replace()後の文字列Bを指定したいの
ですがググっても後者のBが分かりません。
どう書けば良いでしょうか?
0748デフォルトの名無しさん
2013/11/12(火) 18:11:35.11"107.099,-47.839"
0749デフォルトの名無しさん
2013/11/12(火) 18:20:34.44"107.099,-47.839"
0750デフォルトの名無しさん
2013/11/12(火) 18:24:50.13/([\d.]+)-([\d.]+)/,'$1,-$2'
0751デフォルトの名無しさん
2013/11/12(火) 18:26:33.84(?=-)
B
,
0752747
2013/11/12(火) 18:50:31.45どうも。 >>750さんの応用
数字列.replace(/([\d.]+)-([\d.]+)/g, '$1,-$2'); でOKでした
0753747&752
2013/11/12(火) 19:24:43.93例題の 107.099-47.839 とか 45.988-108.951 や 68.21-49.691 などは
OKだったのですが、 -3.854-11.644 は区切られませんでした。
このため /(-*[\d.]+)-([\d.]+)/g と前の方に -* を付けたのですが変りません。
どうすべきでしょうか?
0754デフォルトの名無しさん
2013/11/12(火) 21:26:14.72こっちではそれでうまく行ってるけど?
落ち着いてもう一度確認してみれば?
>>751のを参考に別の記述をしてみた
/-*[\d.]+(?=-\d)/g,'$&,'
それと、もう他に条件はないの?
例えば、
999-999-999とか3つ続く場合とか、
-999-(-999)とか後の数値もマイナスだとか
特定の文字列に挟まれた場合のみとか、又は挟まれてない場合だけだとか?
0755デフォルトの名無しさん
2013/11/12(火) 21:33:34.04忘れて
0756デフォルトの名無しさん
2013/11/13(水) 02:35:08.040757デフォルトの名無しさん
2013/11/13(水) 04:56:58.74もういいよ、自分でなんとかしたほうがマシだよ・・・
0758デフォルトの名無しさん
2013/11/14(木) 13:36:59.52正規表現が使えるようなので、質問ですが、下記のシリアルを正規表現で表記するにはどう表記すれば良いでしょうか。
<AA123456A 1A2B3C4D>
上記シリアルは二つの文字列間に半角スペースが12個含んでいます。
よろしくお願いします。
0759デフォルトの名無しさん
2013/11/14(木) 14:24:49.83<AA123456A 1A2B3C4D>
という正規表現で、表現される。どこがどういう文字を取り得るかもないので、さっぱりだ。
0760デフォルトの名無しさん
2013/11/14(木) 16:22:43.400761デフォルトの名無しさん
2013/11/14(木) 16:50:46.29今ひらめいた。
<AA123456A\x20{12}1A2B3C4D>
こういうこと?
0762デフォルトの名無しさん
2013/11/14(木) 17:57:03.42多分スペース(と<>のくくり)をカットしたいんじゃないかと
replace(/<([^ ]+) *([^ ]+)>/,'$1$2')
0763デフォルトの名無しさん
2013/11/14(木) 20:12:47.00一ヶ月前に書いたもので正規表現はさっぱりわからなくなるな。
0764デフォルトの名無しさん
2013/11/14(木) 21:06:25.16正規表現に名前を付けないからそうなる。
単純に変数に代入するだけでも分かりやすくなるし、
正規表現を使った比較を関数にすればもっといい。
正規表現にもコメント入れる。
なぜか日本で使ってる人が少ないような気がするけど、
長い正規表現は複数行で書いてコメントを入れなさい。
そのための機能がちゃんと用意されてるんだから。
0765デフォルトの名無しさん
2013/11/14(木) 23:02:26.640766デフォルトの名無しさん
2013/11/14(木) 23:03:33.48ドキュメント無くても、テストコード書いとくと、後で使い方が分かっていいよ。
正規表現に限らないけど。
0767デフォルトの名無しさん
2013/11/14(木) 23:51:03.43俺は↑のソフトで作ってる。>>でコメント行、***でそれ以降の行が無視されるという仕様。
正規表現が動かないときに正規表現の途中に***を入れて動かせばそこまでちゃんと
動いてるかどうか確かめられたり。
ただ完成度が低いのがアレ。\/を認識出来ないバグがある。
ウインドウの大きさが変えられなくて不便。
改行を含むテキストへのマッチングが試せない。
完成度を高くしてくれたら金払ってもいい。
0768デフォルトの名無しさん
2013/11/15(金) 08:02:17.63正規表現にコメント機能があるのは知ってるけど、改行入れても大丈夫なの?
0769デフォルトの名無しさん
2013/11/15(金) 09:12:17.61私だけの現象かと、心配していました。少し安心、どうもありがとう。
0770デフォルトの名無しさん
2013/11/16(土) 01:40:09.33xオプション
http://d.hatena.ne.jp/perlcodesample/20080414/1208186274
プログラミング言語で正規表現を使うことが前提の質問にはオプションのことも
考えて回答する必要がある。
テキストエディタの正規表現しか触れたことが無い人はこういうオプションの知識が
無いから適切なオプションのアドバイスが出来ず混乱の元になることがある。
0771デフォルトの名無しさん
2013/11/16(土) 03:02:41.39ドヤ顔で掲載しているサイトとかあるよな。
0772デフォルトの名無しさん
2013/11/16(土) 03:22:03.59間違いを指摘されても修正しない奴とかいるから・・。(スキルが無いから間違いだと分からない)
0773デフォルトの名無しさん
2013/11/16(土) 03:27:17.28そこに誰かが△△を持ってきて○○はまだマシという。
この時、俺が思うのは、
○○はアウト
△△はアウトよりもさらにアウト
マシという考え方はしない。
0774デフォルトの名無しさん
2013/11/16(土) 04:30:56.000775デフォルトの名無しさん
2013/11/16(土) 05:08:35.390776デフォルトの名無しさん
2013/11/16(土) 22:19:42.280777デフォルトの名無しさん
2013/11/17(日) 00:13:48.100778デフォルトの名無しさん
2013/11/17(日) 20:59:28.720779デフォルトの名無しさん
2013/11/17(日) 21:13:49.77Perl(Emeditor)
●検索か置換か?
検索
●説明
各行の1番目のAまでを検索したい
●対象データ
お肉料理
お魚料理
料理
●希望する結果
3行目の"料理"のみマッチさせたいです。
例えば
(?<!お魚)料理 で検索すると、1行目のお肉料理の"料理"と、3行目の"料理"がマッチされてしまいます。
(?<!お肉)料理 で検索すると、2行目のお魚料理の"料理"と、3行目の"料理"がマッチされてしまいます。
上記を1行で書いて、前方にお肉、お魚が付いていない3行目の”料理”の単語だけマッチさせたいです。
((?<!お肉)料理|(?<!お魚)料理)
((?<!お肉)|(?<!お魚))料理
のように書いてみましたが動きませんでした。
どなたかお分かりになる方教えて頂けるとうれしいです。よろしくお願いします。
0780デフォルトの名無しさん
2013/11/17(日) 21:15:42.950781デフォルトの名無しさん
2013/11/17(日) 21:22:25.39申し訳ないです、説明不足になってしまいました。
対象データは例えば下のように文章内のいずれかの場所にあるので、行頭にあるとは限らないので ^料理 ではマッチしないことが多いです。
例:
おいしいお肉料理です
おいしいお魚料理です
おいしい料理です
上の場合では3行目の、おいしい料理です の "料理" のみマッチさせたいです。
説明不足で申し訳ありませんでした。
0782デフォルトの名無しさん
2013/11/17(日) 21:35:07.170783デフォルトの名無しさん
2013/11/17(日) 21:45:21.950784デフォルトの名無しさん
2013/11/17(日) 21:52:37.65(?<!お肉)(?<!お魚)料理
0785デフォルトの名無しさん
2013/11/17(日) 22:15:05.21http://jp.emeditor.com/help/howto/search/search_regexp_syntax.htm
>EmEditor の正規表現検索ルーチンは、Boost ライブラリの Regex++ を利用しています。
全然perlじゃねぇ。ゴミじゃん。
0786デフォルトの名無しさん
2013/11/17(日) 22:20:04.47後読みの | の書き方はそのように書くのですね。勉強になりました。
どうもありがとうございます。
0787デフォルトの名無しさん
2013/11/17(日) 22:20:26.46>この文字列パターンの正規表現は: <a +href=('|\").*('|\") *> となります。
大丈夫か、この会社・・
0788デフォルトの名無しさん
2013/11/17(日) 22:23:34.74http://boost.cppll.jp/HEAD/libs/regex/introduction.htm
htmlもマトモに書けないのかよ・・
0789デフォルトの名無しさん
2013/11/17(日) 22:23:52.04あれ、Regex++ってものになるんですかね?前にPerlと聞いてそちらのページトップに
>EmEditor は、Perl の正規表現構に基づいています
とあって今までPerlだと思ってました。。
0790デフォルトの名無しさん
2013/11/17(日) 22:26:47.20perlの正規表現はこんなちゃちぃものじゃないよ。
0791デフォルトの名無しさん
2013/11/17(日) 22:49:00.06これ読むとちゃちくはないな・・訂正。
0792デフォルトの名無しさん
2013/11/17(日) 23:11:33.64あくまで「基づいている」であって、「同じ」ではないよ。誤解をまねく不親切な記述かもしれない。
でもね、それが決まり文句となってることを知る者なら、いわゆる普通の「Perl(下位)互換の正規表現」と理解するよ。
以下は決まり文句の例。
RegExp - JavaScript | MDN
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/RegExp
>Perl は JavaScript の正規表現のモデルとなっているプログラミング言語です。
Clinick's Clinic on Scripting: 正規表現による Visual Basic Scripting Edition (VBScript) の機能強化 - MSDN
http://msdn.microsoft.com/ja-jp/library/ms974570.aspx
>VBScript のパターンセットは Perl をもとにしており、そのコアの機能は Perl に似ています。
java.util.regex (Java Platform SE 6)
http://docs.oracle.com/javase/jp/6/api/java/util/regex/package-summary.html
>Pattern クラスのインスタンスで使用する正規表現は、Perl に似た文字列形式で指定します。
0793デフォルトの名無しさん
2013/11/18(月) 00:33:58.790794デフォルトの名無しさん
2013/11/18(月) 00:35:09.580795デフォルトの名無しさん
2013/11/18(月) 02:19:48.02鬼車系の名前指定部分式呼出しやネストレベル付き後方参照ってPerl下位互換では無いよね。
どっちが上とかじゃなく、原型がPerlというだけでそれぞれ独立したものだと思ってて良いと思う。
0796デフォルトの名無しさん
2013/11/18(月) 03:41:28.080797デフォルトの名無しさん
2013/11/20(水) 06:06:25.93https://www.oreilly.co.jp/books/9784873113593/#errata0
\Sの間違いは酷いなw
正規表現にもっと誤植あったような気がしたが・・メモっときゃ良かった。
0798デフォルトの名無しさん
2013/11/30(土) 16:23:01.11このテキストのabc以外(つまりxycz)に一致させたいんですが
[^(abc)]+ こうやってもxyzしか返ってきません…
実現するにはどうしたらいいんでしょうか?
0799デフォルトの名無しさん
2013/11/30(土) 16:35:21.92そういう満たさないものに一致させるのは原則として無理だよ。
まあ、逆転の発送と頑張り次第で、その場はなんとかなるけどね。
0800デフォルトの名無しさん
2013/11/30(土) 16:38:54.80そうなんですか…
では頑張っていろいろ考えてみます。
0801デフォルトの名無しさん
2013/11/30(土) 16:44:51.470802片山博文MZコスモ ◆T6xkBnTXz7B0
2013/11/30(土) 16:46:13.340803デフォルトの名無しさん
2013/11/30(土) 16:47:14.17[^(abc)] は (,a,b,c,) 以外の任意の一文字を示す。
括弧でくくったつもりかもしれないが無意味で、文字列ではないことに注意。
先読みとか戻り読みで調べてみたらいいかもしれない。
0804デフォルトの名無しさん
2013/11/30(土) 16:53:16.48レスありがとうございます。
文字列否定は結構面倒なんですね。
勉強になります。
0805デフォルトの名無しさん
2013/11/30(土) 17:47:05.06JavaScriptとかならsplit(/abc/)でいける。
「マッチした"範囲"」から「マッチしなかった範囲」を求めてもいける。
0806デフォルトの名無しさん
2013/11/30(土) 17:57:19.700807デフォルトの名無しさん
2013/11/30(土) 18:00:03.82だが他の場合には使えなかったりするわけさ。
0808デフォルトの名無しさん
2013/11/30(土) 18:21:28.100809デフォルトの名無しさん
2013/12/01(日) 07:56:41.84>>635の前後の ^ と $ を取ってxyzをabcにするだけだよ。
0810デフォルトの名無しさん
2013/12/01(日) 08:32:08.26次点でゼロ幅否定
一文字ずつ文字クラス否定を並べるのは猿レベル
0811デフォルトの名無しさん
2013/12/01(日) 10:33:21.35http://○○○.com/dir/
どちらが与えられた場合でも常に
http://○○○.com/dir に一致させるにはどうすればいいんでしょうか?
0812デフォルトの名無しさん
2013/12/01(日) 12:31:02.120813デフォルトの名無しさん
2013/12/01(日) 12:50:23.740814デフォルトの名無しさん
2013/12/02(月) 10:21:58.19Python3.3
●検索か置換か?
置換
●説明
均等割りにしているスペースを削除したい
一文字ずつスペースが入っている文字のスペースを削除したい
●対象データ
あ い う え お
かき くけ ここ
●希望する結果
あいうえお
かき くけ ここ
0815デフォルトの名無しさん
2013/12/02(月) 10:31:55.75ありがとうございました!
0816デフォルトの名無しさん
2013/12/02(月) 17:36:15.17s/([^\s])\s(?=[^\s]\s[^\s])/$1/g
0817デフォルトの名無しさん
2013/12/02(月) 21:06:11.02おまえら虫けらくらいにしか思われてないぞ
0819814
2013/12/03(火) 10:27:41.88python用に書き換えてみたのですが
import re
src = 'あ い う え お'
dst = re.findall(r'(\S)\s(?=\S\s\S)+', src)
dst
['あ', 'い', 'う']
「え・お」が抽出されないのですが
perlでは抽出されるのでしょうか?
0820814
2013/12/03(火) 10:32:49.07import re
src = 'あ い う え お'
dst = re.findall(r'(\S)\s(?=\S\s\S)', src)
dst
['あ', 'い', 'う']
0821デフォルトの名無しさん
2013/12/03(火) 21:34:34.08これがマッチしたら
s/\s//g
すればいい。
0822デフォルトの名無しさん
2013/12/03(火) 22:49:48.530823デフォルトの名無しさん
2013/12/03(火) 23:50:31.930825デフォルトの名無しさん
2013/12/05(木) 06:13:23.740826デフォルトの名無しさん
2013/12/05(木) 15:53:41.55http://engawa.2ch.net/test/read.cgi/poverty/1386147240/
0828デフォルトの名無しさん
2013/12/07(土) 13:36:01.92分かりません
●検索か置換か?
検索
●説明
風向は北のように1文字だったり西南西のように3文字だったりします。
風速も1〜2文字に変化します。
●対象データ
観測場所風向風速気圧入道埼灯台西南西15m1016hPa艫作埼灯台南西10m
●希望する結果
入道埼 西南西 15m
艫作埼 南西 15m
正規表現というもの自体、昨日初めて知りました。
入門サイトを見ましたが概要が少し分かったような気がするだけです。
海上保安部の気象状況サイトから文字列を取得してデスクトップ上に表記させようと考えています。
他にも活用して行きたいので、これから勉強しようと思います。よろしくお願いします。
0829デフォルトの名無しさん
2013/12/07(土) 15:05:12.57ほれ、はよぅ造ってやれや
0830デフォルトの名無しさん
2013/12/07(土) 15:47:10.53まず環境決めろよ
0831デフォルトの名無しさん
2013/12/07(土) 15:53:58.68艫作埼 南西 15m でなく 10mです
0832デフォルトの名無しさん
2013/12/07(土) 15:58:04.10ここのHTMLを解析したほうが早くないか?
http://www6.kaiho.mlit.go.jp/07kanku/sasebo/kisyou.html
テーブルになってるから楽だと思われ
0833デフォルトの名無しさん
2013/12/07(土) 16:12:13.840834デフォルトの名無しさん
2013/12/07(土) 16:18:12.40Perlだけどだいたい読めるだろ
各ページのHTMLファイルはあらかじめダウンロードしておくこと
use strict;
my @weatherfile;
my $wf;
my @src;
my $dat;
my @buf;
@weatherfile = ( "sasebo.html" , "tsushima.html" , "nagasaki.html" );
foreach $wf ( @weatherfile ){
open( FH , "<./$wf" );
@src = <FH>;
close( FH );
$dat = join( "" , @src );
$dat =~s/(\r|\n)//meg;
@buf = split( /<\/tr><tr>/ , $dat );
foreach( @buf ){
if ( $_ =~/"tdNum1 normal"/ ){
if ( $_ =~/<td.*?>(.*?)<\/td><td.*?>(.*?)<\/td><td.*?>(.*?)\s.*?<\/td>/ ){
print $1 . " " . $2 . " " . $3 . "m\n";
}
}
}
}
exit;
0835デフォルトの名無しさん
2013/12/07(土) 16:30:51.860836デフォルトの名無しさん
2013/12/07(土) 17:07:40.69もし、そのサイトの仕様がいつも変わらないなら
URLでファイルにアクセスしてreadLineを繰り返して
startWithで欲しい行を見つけて
subStringで文字列取ればいいんじゃないの?
0837デフォルトの名無しさん
2013/12/07(土) 17:11:18.990838デフォルトの名無しさん
2013/12/07(土) 17:27:53.74いつの間にかアンドロイドアプリって方向になってる。
0839デフォルトの名無しさん
2013/12/07(土) 17:49:53.64>>832のような波高データがあったり、風向数値データが全部無い灯台があったら破綻するけど
<html><head><script>
var s="観測場所風向風速気圧入道埼灯台西南西15m1016hPa艫作埼灯台南西10m";
var pattern=/(?:観測場所風向風速気圧)?(.+?)(?:灯台|GPS局)((?:東|西|南|北)+)?(\d+m)?(?:\d+hPa)?/g
var newdata=s.replace(pattern,'$1 $2 $3<br>');
document.write(x);
</script></head></body></html>
0840839
2013/12/07(土) 17:53:44.98それと、アンドロイドのjavaで使える正規表現かどうかは知らない
0841デフォルトの名無しさん
2013/12/07(土) 17:54:58.800842デフォルトの名無しさん
2013/12/08(日) 15:35:25.79数字以外のときはエラーを出すというのをやりたいのですが
[[ "$A" =~ ^[^0-9]+$ ]] && echo "not number"
がうまく動作しません。
具体的には、0a1のように数字とアルファベットが混ざっているときに
エラーが出ません。
[[ "$A" =~ ^[0-9]+$ ]] || echo "not number"
[[ ! "$A" =~ ^[0-9]+$ ]] && echo "not number"
だとうまくいきます。
上記の書き方ならうまくいくのですが、原因が知りたいので
最初のやり方でダメな理由を教えていただきたいです。
0843デフォルトの名無しさん
2013/12/08(日) 15:49:56.410844デフォルトの名無しさん
2013/12/08(日) 16:04:16.52[[ "$A" =~ [^0-9] ]] && echo "not number"
0845デフォルトの名無しさん
2013/12/08(日) 16:13:30.830846デフォルトの名無しさん
2013/12/08(日) 16:22:47.63"$A" !~ ^[0-9]+$
0847デフォルトの名無しさん
2013/12/08(日) 18:20:20.70ああ、なるほど。
私の書いた1番目と2,3番目は否定のかかる箇所が違うんですね。ありがとうございます。
集合と論理って難しい・・・。
0848デフォルトの名無しさん
2013/12/08(日) 21:52:43.84未テストの正規表現をコードの中にブチ込んで動作確認するは面倒だろう。
0849デフォルトの名無しさん
2013/12/08(日) 22:40:03.05ありがとうございます。
さっそくブックマークしました。
0850デフォルトの名無しさん
2013/12/09(月) 14:48:19.97([0-9])TB タブ ¥1 TB タブ regex
([0-9])GB タブ ¥1 GB タブ regex
([0-9])cm タブ ¥1 cm タブ regex
とやると例えば1tbや1CMも1 tbや1 cmなっています。
そこで([0-9])(TB) → ¥1¥2となると大文字小文字の変換はなくなりましたが
相変わらず1tbも1 tbとなってしまいます。
どうやって大文字小文字の区別をすれば良いのでしょうか?
0851デフォルトの名無しさん
2013/12/09(月) 19:55:31.26Where are you fom? Japanese is a mess.
0852デフォルトの名無しさん
2013/12/09(月) 19:57:35.730853デフォルトの名無しさん
2013/12/09(月) 21:29:02.200854デフォルトの名無しさん
2013/12/10(火) 19:24:33.22Becky! Internet Mail Ver.2
●検索か置換か?
検索
●説明
+0900を含まないものを検索したい
●対象データ
+0900
+0500
+0630
●希望する結果
+0500
+0630
よろしくお願いします。
0855854
2013/12/10(火) 19:56:28.06●対象データ
+0900
+0930
+0500
+0610
●希望する結果
+0930
+0500
+0610
0856デフォルトの名無しさん
2013/12/10(火) 21:21:13.850857デフォルトの名無しさん
2013/12/10(火) 23:17:39.430858854
2013/12/10(火) 23:27:28.77貴方のおっしゃる「ない時」にチェックを入れたのでは希望の動作はしません。
>>854-855は「+0900がない時」という条件ではないです。
\+([0-9]{0,3}|[0-9]{5,}|[^0][0-9]{3}|0[^9][0-9]{2}|09[^0][0-9])$
0860デフォルトの名無しさん
2013/12/11(水) 13:16:49.920861デフォルトの名無しさん
2013/12/11(水) 14:01:09.190862854
2013/12/11(水) 14:56:35.05先頭がマイナスの場合もありました。
>>854を取り消して再度質問です。
●Regular Expressionの使用環境
Becky! Internet Mail Ver.2
●検索か置換か?
検索
●説明
+0900を除くタイムゾーンが含まれているかどうかを検索したいです。
※+0900が含まれている・いないにかかわらず+0900を除くものがある場合を検索。
●対象データ
※データ1-3はそれぞれひとまとまりです。
---データ1---
+0900
+0900
+0900
---データ2---
-1200
+0900
+0900
+0500
---データ3---
-1200
+0545
+0630
+1300
0863854
2013/12/11(水) 14:57:24.22●希望する結果
---データ2---
-1200
+0900
+0900
+0500
---データ3---
-1200
+0545
+0630
+1300
0864デフォルトの名無しさん
2013/12/11(水) 15:02:56.36条件を変えたので早く答えてください
0865854 ◆0GPvTQBfjB8L
2013/12/11(水) 15:18:55.75ここまでで>>854,855,858,862,863,865以外は私ではないです。
※以降、別のトリップを付ける事はしません。
忘れた等いかなる理由の場合でも変更しません。
0866デフォルトの名無しさん
2013/12/11(水) 16:09:49.51俺様が満足するまでお前らが試行錯誤しろ」という態度に変わりはない
0867デフォルトの名無しさん
2013/12/11(水) 16:51:19.090868デフォルトの名無しさん
2013/12/11(水) 16:53:25.640869デフォルトの名無しさん
2013/12/11(水) 19:01:34.460870デフォルトの名無しさん
2013/12/11(水) 19:03:22.72(\-[0-9][0-9][0-9][0-9])|(\+1[0-9][0-9][0-9])|(\+0[^9][0-9][0-9])|(\+09[^0][0-9])
0872デフォルトの名無しさん
2013/12/11(水) 21:27:01.26相手の態度は関係なくてただ理解力不足なせいで回答できないくせに…
0873デフォルトの名無しさん
2013/12/11(水) 21:58:51.070874デフォルトの名無しさん
2013/12/11(水) 22:05:12.54872はageて書いてるし文章も質問者とは異なる
明らかな煽り
0875デフォルトの名無しさん
2013/12/11(水) 22:16:25.66ですみませんもありがとうもない人間か
0876デフォルトの名無しさん
2013/12/11(水) 22:20:33.97●Regular Expressionの使用環境
Vaka873
●検索か置換か?
置換
●説明
「コテ付け忘れてるぞ」を「答えられる頭がなくて悔しいです」に置換したい
●対象データ
コテ付け忘れてるぞ
●希望する結果
答えられる頭がなくて悔しいです
0877デフォルトの名無しさん
2013/12/11(水) 22:23:29.33>>859は量指定子が入っているから使えないけどな
だからありがとうもすみませんも言う必要はない
0878デフォルトの名無しさん
2013/12/11(水) 22:57:34.410879デフォルトの名無しさん
2013/12/11(水) 23:10:12.63荒らしに構うんじゃねぇよ。
0880854 ◆0GPvTQBfjB8L
2013/12/11(水) 23:11:42.81>>859
条件が変わってすみません。
回答ありがとうございました。
>>871で出来ました。
0882デフォルトの名無しさん
2013/12/11(水) 23:22:03.610883デフォルトの名無しさん
2013/12/11(水) 23:23:57.530884デフォルトの名無しさん
2013/12/12(木) 18:42:32.65seikihyougenn.com
↑唯一使い勝手がいいウェブツール
こちらで公開しているツールは正規表現のログや登録ができてリストをクリックすればさっと入力されて、置換も抜き出しもできて便利なんですが、
フォルダごとやファイルの複数選択ができません
フォルダごとやファイルを複数選択ができて、このツールみたいな機能がついているのがほしいんです
ブラウザが無理でしたら普通のツールでもいいです
フォルダ選択できれば神ツールなんですが、、、
0885デフォルトの名無しさん
2013/12/12(木) 18:49:31.18ブラウザでそんなことできるわけないだろ
0886デフォルトの名無しさん
2013/12/12(木) 18:49:47.840887デフォルトの名無しさん
2013/12/12(木) 20:02:02.80firefoxならmigemo使っていたが。
最近はブラウザといえばウェブブラウザだが、ファイルブラウザか? ならsedでいいんじゃない。
0888デフォルトの名無しさん
2013/12/12(木) 20:13:47.760889デフォルトの名無しさん
2013/12/12(木) 20:15:50.83でも良い物は見つからなかったよ
0890デフォルトの名無しさん
2013/12/12(木) 20:17:44.970891デフォルトの名無しさん
2013/12/12(木) 20:25:14.650892デフォルトの名無しさん
2013/12/12(木) 20:32:16.71実際に何か仕事をしてくれるわけではないチェック専用のツールというのが実に斬新だな
どういう状況でそれが必要になるのかはさっぱりわからないが
0893デフォルトの名無しさん
2013/12/12(木) 20:35:38.87お前は>>884未満な奴だな。
ブラウザで複数選択する事は可能。
>>884はFlashっぽいから尚更。
>>890
どうやってみつけてきたんだ。
探偵にでもなればいいんじゃね。
0894デフォルトの名無しさん
2013/12/12(木) 20:36:40.88自分でいちいち表示させなくて良いという手間を省いてくれるツール
0895デフォルトの名無しさん
2013/12/12(木) 20:45:18.10某国の諜報員さんですか?
0896デフォルトの名無しさん
2013/12/12(木) 20:49:22.750897デフォルトの名無しさん
2013/12/12(木) 21:01:43.01アホかflashだろうがフォルダの内容はみれねーよ
0898884
2013/12/12(木) 21:22:52.27あっちでは紹介ついでの質問って感じに
なっちゃって質問が弱くなっちゃったし
過疎ってたのでこちらに書き込ませてもらいました
>>888
ツール見てもらったら分かると思うけど、
ひたすら正規表現やるのに楽できる機能が欲しいんです
ないでしょうかね?
>>889
いや、ローカルなのはさっきのツールもなので、
その使い勝手のGREP使えるツールがほしいんです
>>895
さっきのツールはFlash製で鯖経由なしのローカルで完結してるツールで
内容が漏れることがないって説明に書いてありましたよ
>>897
フォルダは無理でもファイル複数選択って無理ですかね?
0899デフォルトの名無しさん
2013/12/12(木) 21:33:47.02カッコイイ!!
0900884
2013/12/12(木) 21:52:48.61レスありです
firefoxでmigemo
調べてみたけどなんか違う、、、
このツールみたいに作った正規表現をリストに登録して
クリックですぐ使えるようにしたりできます?
今となっては必須と言っていい機能なのでこれがないと不便
あとマークだけじゃなくて抜き出しや置換できるのが欲しいです
串の抜き出しとかにも使ってるのでw
GREPほしい、、、いちいちファイル一つずつ開くのがめんどくさいんですよね、、、
>>892
中途半端な腕前だと間違いが頻発して繰り返し作業になるから
正解が出るまで繰り返せるチェッカー必須
>>899
正規表現できる人間は文字列の魔術師なんだってさwカッコイイ
0901デフォルトの名無しさん
2013/12/12(木) 22:28:55.53(お前の中では)不可なんだろ。
0902デフォルトの名無しさん
2013/12/12(木) 22:45:57.680903デフォルトの名無しさん
2013/12/12(木) 23:02:42.170904デフォルトの名無しさん
2013/12/12(木) 23:27:25.710905デフォルトの名無しさん
2013/12/13(金) 00:35:48.35HTML5 FileAPI
0906デフォルトの名無しさん
2013/12/13(金) 00:57:06.25テスターというよりは実際に正規表現を使って文字列処理をするツール、という感じ。
正規表現を作る場ではなく使う場。
複雑な正規表現を作りたいときは1行の入力フォームの中で作るなんてとても無理。
ここの常連のようなガチな正規表現作者には向かない。
一般人には一行で十分かもだけどね。
0907デフォルトの名無しさん
2013/12/13(金) 01:16:35.00正規表現に改行やタブを入れながら作れるツール。このツール自体はJaneに特化してて
普通の正規表現作成には向かないが。
0908デフォルトの名無しさん
2013/12/13(金) 01:50:36.65flashならフレーム移動とかで出来そうな気がする。
0909デフォルトの名無しさん
2013/12/13(金) 05:34:09.90フロントエンド位、LL言語で好きなように実装すればいいんだし。
0910デフォルトの名無しさん
2013/12/13(金) 10:09:27.230911デフォルトの名無しさん
2013/12/13(金) 11:13:20.11まぁ>>884のサイトの宣伝のダシに使っただけで用はないんだろうけど。
0912デフォルトの名無しさん
2013/12/13(金) 11:46:39.99「作ったので良かったら使って下さい」って普通に宣伝すればいいのに
なんでこんな感じの悪いことしにくるのか。
0913デフォルトの名無しさん
2013/12/13(金) 11:55:40.86> >>895
> さっきのツールはFlash製で鯖経由なしのローカルで完結してるツールで
> 内容が漏れることがないって説明に書いてありましたよ
ここで中の人と分かるね。本人だからこそ書けるレスだよこれ。
一般ユーザーならこんな説明を信用しない。
0914デフォルトの名無しさん
2013/12/13(金) 11:59:59.87(?=正規表現)
の 正規表現 をいちいち消さないといけないのが面倒。
(?=) が挿入されて = の後ろにカーソルが移動するようにしたらどうか。
0915デフォルトの名無しさん
2013/12/13(金) 12:01:25.38打ったほうが早い。
0916884
2013/12/13(金) 18:40:44.51しかもプロが多いw
レベルの低い自分はちょっとスレ違いだったか、、、
とにかくファイルを複数選択できて作った
のを楽に再利用できるツールがほしいんです
一押しのツールないか教えてプロの人
>>906
うん、よくできてますよね
プロは何行もいるのか、、、
僕はとりあえず一行で十分です
>>907
レスサンクス
ダウンロードしてツール使ってみたけど
なんか違う、、、ファイルを複数選択できて、
再利用が楽にできて
抜きだしもできるやつがほしいんです
>>909
自分で作れたら聞いてないです
もっと楽に再利用できるのがほしいんです
あとできれば抜きだしもほしい
0917884
2013/12/13(金) 19:07:39.71ブラウザ以外にもいろいろ調べたけど
いいのがなかった
あるなら教えてほしいです
>>912
そうなのか、、、
そのわりにカウンターが全然回ってないw
いいツールなのにな、、、
>>913
んな言い切られてもwww
て笑えたけどちょっと笑えないわ
一理あるかも?
>>914>>915
うん、めんどいです
だからデータ修正しました
先読み、戻り読みは直打ちめんどいです
913で気になったんですけど
ローカルで完結って
やたら強調してるし、、、これあやしいですか?
明記して嘘だったら犯罪でしょ?
詳しい人なら分かりませんか?
見られて困ることしてないけど
0918デフォルトの名無しさん
2013/12/13(金) 19:29:07.030919デフォルトの名無しさん
2013/12/13(金) 19:35:44.43自作xmlをうp出来るうpローダーを用意したらどうか。
counter.cgiが動くってことはうpロダも接地出来るっしょ。
0920デフォルトの名無しさん
2013/12/13(金) 19:47:00.44>なんか違う
↓こういうのが出来るから参考にしたらどうかと言いたかった。
http://blog-imgs-29-origin.fc2.com/f/u/n/funcchan/image58.jpg
このツールは画像の状態で正規表現のテストが出来るから複雑な正規表現が作りやすい。
これが出来ないツールはいらね。
0921デフォルトの名無しさん
2013/12/13(金) 19:49:21.440922デフォルトの名無しさん
2013/12/13(金) 19:57:25.370923884
2013/12/13(金) 20:10:54.18>>920
レスサンクス
これがプロか、、、
でもすごいけど違うんです
こういうのできなくてもいいから
楽にできるやつがほしいんです
ファイル複数選択できてね
0924デフォルトの名無しさん
2013/12/13(金) 21:32:45.81出来るようにしてくれって言ってんだよ。しないならイラネ。
ガチ勢の有名人も使えるようなツールにすればアフィが捗るぞ。有名人が宣伝してくれるからな。
0925デフォルトの名無しさん
2013/12/13(金) 21:35:41.27インデント対応するなら乗り換えるよ。インデントされてれば見やすいままコードに突っ込めるし。
/xを使ってね。
0926デフォルトの名無しさん
2013/12/13(金) 21:55:14.62それいいかも。
xのチェックボックスがあるテスターは多いけど
実際にxの書式で使えるテスターはなかなか
ない。
0927デフォルトの名無しさん
2013/12/13(金) 22:02:22.60俺はテキストエディタで作ってるからテスターなんてノーサンキュだけど
0928デフォルトの名無しさん
2013/12/13(金) 22:03:51.050929デフォルトの名無しさん
2013/12/13(金) 22:14:25.700930884
2013/12/13(金) 22:16:01.39別に中の人だと思われてもおもしろいから
スルーしてたけど会話にならないな、、
ずいぶん前にメール送ってみて、
今も音沙汰ないし
手っ取り早くツール見つけたかったけど
サクラエディタとの使い分けしかないかな、、めんどい
0931デフォルトの名無しさん
2013/12/13(金) 22:39:22.47普通のソフトなら↓
http://www.gigafree.net/tool/grep/
0932デフォルトの名無しさん
2013/12/13(金) 22:42:24.00こういうことが出来る程度のスキルがあればだけど。
0933デフォルトの名無しさん
2013/12/13(金) 22:57:14.190934デフォルトの名無しさん
2013/12/14(土) 00:18:34.71そりゃまぁFlashのセキュリティホールから任意コード実行系のバグを使えばそりゃ不可能ではないだろうけど…
Webサイト上のコンテンツの一部に過ぎないFlashがローカルファイルを任意に閲覧とか駄目に決まってるだろ。
ユーザが明示して許可した範囲のアクセスか、Webサイトじゃなくアプリケーションとして動かすかしかなくね?
HTML5 FileAPIにしたって制限ガチガチ。
0935デフォルトの名無しさん
2013/12/14(土) 00:32:44.54まあ全部作るんなら言語は何だっていいんだけど
0936デフォルトの名無しさん
2013/12/14(土) 02:50:04.05社外秘のファイルの置換がしたいとかなら笑えるんだが。
flashに読み込むということはそれを外部に送信されても全然不思議じゃない状況になる。
POSTメソッド呼び出すだけだからね。それが分かってればブラウザ上で使いたいなんて普通は思わない。
0937デフォルトの名無しさん
2013/12/14(土) 03:29:20.070938デフォルトの名無しさん
2013/12/14(土) 05:09:35.66でググると痛い発言がてんこもりだな。
>>884の
「唯一使い勝手がいいウェブツール」
~~~~
も痛いね、他人とは思えないね、すごい偶然だなぁ。
0939884
2013/12/14(土) 21:25:11.40なんかあきらめかけてたのに
レスサンクス!
これこれ!こういうやつです!
ありがとう、だけど、ごめん、、、
そのページのものはもう見てるんだ
>>933
ほんとそれ!
だから応援してるw
>>934
なるほど、やっぱり複数選択は無理なんですね
こういうことをスラスラ言えるレベルの高さがほしい
>>932>>935
そんなスキルあったら聞いてないです、すいません
>>936
なるほど、ちょっと心配になりました
けどプロは普通じゃないと思います
変な送信してないかとかを調べられないんですか?
0940884
2013/12/14(土) 21:47:43.89そのオモチャより便利なのが
見つからないから聞いてるんです
サクラエディタも使ってるけど不便です
普段使ってるプロのツールを教えてほしいです
使いこなせないかもしれないけど
>>938
あちこち探しても見つからないから
ちょっと煽って、いいものを紹介してもらいたかったw
例を見せないと知ってるのとか
ほしいのと違うもの紹介されそうだからね
やっぱりここは全体的にレベルが高いですね
ここでは自分のレベルが低くて困る
レスのつく良スレだけどスレ違いだったかな
0941デフォルトの名無しさん
2013/12/14(土) 22:53:24.250942デフォルトの名無しさん
2013/12/15(日) 01:37:22.500943デフォルトの名無しさん
2013/12/15(日) 05:38:37.32鼬害。ソフト板にでも逝け。
0944デフォルトの名無しさん
2013/12/15(日) 14:46:11.50これいいな
0945デフォルトの名無しさん
2013/12/15(日) 15:53:01.93これxyzを含まない正規表現のつもり?
y| が余計でこのせいで y[^xz] が意味をなさなくなってる。
0946デフォルトの名無しさん
2013/12/15(日) 16:09:11.730947デフォルトの名無しさん
2013/12/15(日) 22:31:36.71awkじゃあるまいしスペース量で見た目を分けた方がいいや
0948デフォルトの名無しさん
2013/12/15(日) 22:53:43.500949デフォルトの名無しさん
2013/12/16(月) 01:22:38.06>>16の解読してみた。アレが4個だった。
0950デフォルトの名無しさん
2013/12/16(月) 04:29:02.820951デフォルトの名無しさん
2013/12/16(月) 06:04:18.86http://toro.2ch.net/test/read.cgi/tech/1363769640/
次スレ
0952デフォルトの名無しさん
2013/12/16(月) 19:32:29.290953Regular Expression(正規表現) Part12
2013/12/16(月) 20:04:37.05質問する場合は必ず実装言語や処理系ソフトウェア名を示してください。
前スレ
Regular Expression(正規表現) Part11
http://toro.2ch.net/test/read.cgi/tech/1362913813/
天ぷら等2以降
0954デフォルトの名無しさん
2013/12/16(月) 22:38:16.220955デフォルトの名無しさん
2013/12/16(月) 23:03:39.65自己紹介して楽しい?
0956566
2013/12/17(火) 00:35:00.75マトモな解答出来るのが俺しかいないから重複スレは閑古鳥になるだろうよ。
0957566 ◆QzqhRqBYxktP
2013/12/17(火) 00:40:44.740958デフォルトの名無しさん
2013/12/17(火) 03:43:48.98□スレの私物化
0959デフォルトの名無しさん
2013/12/17(火) 07:57:05.10Regular Expressionなんて表現は日常ほとんど使わないのではないか。
0960デフォルトの名無しさん
2013/12/17(火) 14:30:37.08Regular Expression(正規表現) Part12
http://toro.2ch.net/test/read.cgi/tech/1387257592/
0961デフォルトの名無しさん
2013/12/17(火) 18:09:47.13正統性を主張するのは構わないが、せめてタイトルだけは変えて欲しかったが
立ててしまったのだね。
0962デフォルトの名無しさん
2013/12/17(火) 18:47:42.920963デフォルトの名無しさん
2013/12/17(火) 21:39:21.49おつー
0964デフォルトの名無しさん
2013/12/18(水) 21:14:06.430965デフォルトの名無しさん
2013/12/18(水) 21:23:48.500966デフォルトの名無しさん
2013/12/18(水) 21:59:32.14>>964は荒らしだからスルーよろ。
0967デフォルトの名無しさん
2013/12/18(水) 22:41:01.91感情をコントロールしろ。周りの人間を威嚇するな、バカ犬じゃあるまいし。
0968デフォルトの名無しさん
2013/12/18(水) 22:42:54.03煽り道をなめんな。
0969デフォルトの名無しさん
2013/12/18(水) 22:53:41.13周りが自分の思い通りにならないと暴走する。早めに精神病院に行くことをおすすめする。
0970デフォルトの名無しさん
2013/12/18(水) 22:57:53.38あー、お前が何を言っても
お前の思い通りにはならないから
諦めとけw
0971デフォルトの名無しさん
2013/12/18(水) 23:13:02.430972デフォルトの名無しさん
2013/12/18(水) 23:41:46.700973デフォルトの名無しさん
2013/12/19(木) 01:05:30.65ほれ、おまえの仲間だぞ。
三鷹ストーカー殺人「彼女の死考えると心安らいだ」
http://news.tbs.co.jp/newseye/tbs_newseye2083960.html
0974デフォルトの名無しさん
2013/12/19(木) 01:08:28.23正規表現 Part11
http://toro.2ch.net/test/read.cgi/tech/1363769640/
0975デフォルトの名無しさん
2013/12/19(木) 01:52:46.92レッテル貼りと宣伝乙です^^
0976デフォルトの名無しさん
2013/12/19(木) 01:57:03.490977デフォルトの名無しさん
2013/12/19(木) 02:12:07.48ねぇねぇ、いつごろからそういう性格になったの?
参考までに教えてくれないかな。
0978デフォルトの名無しさん
2013/12/19(木) 02:14:36.44お父さんとお母さんとは上手くいってた?
特にお母さんとの関係は?
0979デフォルトの名無しさん
2013/12/19(木) 02:16:28.70人間関係はどう?自分だけ孤立したりしてない?
0980デフォルトの名無しさん
2013/12/19(木) 04:06:46.97http://kotobank.jp/word/%E7%97%85%E8%AD%98
0981デフォルトの名無しさん
2013/12/19(木) 04:15:38.21http://www.psy-nd.info/
0982デフォルトの名無しさん
2013/12/19(木) 06:43:51.650983デフォルトの名無しさん
2013/12/19(木) 07:40:26.71元々は漢字名の正規表現 Part** だったんだよ。Part11からかな。この名前に
突然置き換わったのは。
0984デフォルトの名無しさん
2013/12/19(木) 10:40:12.93お前そんなに酷い環境で育ったのか。
夜中の2時過ぎになっても眠れなくてここに書き込んで発散するとか
お前がいくら荒らしとはいえさすがに同情するわ。
可哀想に。
0985デフォルトの名無しさん
2013/12/19(木) 14:19:55.01ストーカーやDVはそのための行為。
スレタイや天ぷら改変でスレを支配してみじめな自分を満たそうとしたんだろう。
0986デフォルトの名無しさん
2013/12/19(木) 14:27:46.04だったらこのままでもいいやwwwwwwwww
ざまぁあああああああああああああwwwwwwwwwwwww
0987デフォルトの名無しさん
2013/12/19(木) 15:05:20.82次々スレはこれにするわw
0988デフォルトの名無しさん
2013/12/19(木) 18:15:31.60そうやって自演で煽れば対立構造にでもなると思ってるんだろうか
0989デフォルトの名無しさん
2013/12/19(木) 18:53:17.570990デフォルトの名無しさん
2013/12/19(木) 19:03:17.920991デフォルトの名無しさん
2013/12/19(木) 19:14:24.820992デフォルトの名無しさん
2013/12/19(木) 19:19:08.93ww
0993デフォルトの名無しさん
2013/12/19(木) 19:42:42.540994デフォルトの名無しさん
2013/12/19(木) 19:58:21.910995デフォルトの名無しさん
2013/12/19(木) 20:26:25.730996デフォルトの名無しさん
2013/12/19(木) 20:31:17.370997デフォルトの名無しさん
2013/12/19(木) 20:32:21.820998デフォルトの名無しさん
2013/12/19(木) 20:32:51.300999デフォルトの名無しさん
2013/12/19(木) 20:33:47.531000デフォルトの名無しさん
2013/12/19(木) 20:34:23.12正規表現 Part11
http://toro.2ch.net/test/read.cgi/tech/1363769640/
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。