[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 2chのread.cgiへ]
Update time : 05/09 15:05 / Filesize : 175 KB / Number-of Response : 729
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

正規表現 Part6



1 名前:デフォルトの名無しさん mailto:sage [2009/05/06(水) 00:36:04 ]
正規表現(Regular Expression)スレです。

質問する場合は実装言語や処理系ソフトウェア名を示しておくと話が早いです。

【 前スレ 】 正規表現 Part5
pc12.2ch.net/test/read.cgi/tech/1212498448/

220 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 12:33:32 ]
>>219
問題がよくわかんないし、javaとexcelだしスルー。

221 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 12:37:46 ]
そもそも便所の落書きに仕事を持ち込まれても知らんし。

222 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 13:14:57 ]
>>212
正規表現で書かれたフィルタのバグ取りなんてぞっとする
ちゃんとした技術者なら、RFCにCSVのBNFがそのまま載ってるんだから
BNFの通りにコーディングすりゃ
テスト含めて1日で終わるよ

223 名前:204 mailto:sage [2009/07/31(金) 13:15:56 ]
>>213
おっと確かに! 居ないからこそ、漏れがやる羽目になっとるわけだがwww
(出来る人に空きが無いという理由もある)
しかしま、コトは相対比較で十分なんで。

>>221
まあねえ。ML探して加入して自己紹介して
過去ログ検索して質問投げるってのが本来なんだろうが。
でもwww.rubular.com/とかでちょこちょこやるうちに
何とかなりそうな気がしてきた。

224 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 13:26:42 ]
>>207
'''hoge' みたいなパターンがダメなのでは。

>>205 がよくわからんのだが、正規表現の変換処理のリスト (filterlist) を積んで、
executeFilters() でそれらを順番に逐次処理して適用する、ということ?
そんなん絶対うまくいかんと思うが。

225 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 13:43:19 ]
絶対入力するなよ!絶対だぞ!絶対入れるなよ!
で切り抜けるんだろう

226 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 13:56:39 ]
>>211
だよねー。

Java は良く知らないんだが、 JavaCC とか使えばスッキリ書けないのかね?

227 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 14:17:27 ]
CSV扱うライブラリぐらいjavaにもありそうなもんだけどな。

228 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 16:40:25 ]
Javaでも20行未満で書けるレベルの処理だろうに。




229 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 16:50:34 ]
>>228
お前がそれをさっさと書かないからこのネタが延々と終わらんだろうが。

230 名前:デフォルトの名無しさん [2009/07/31(金) 16:56:53 ]
ライブラリあるの?

231 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 16:57:34 ]
SuperCSVオススメ

232 名前:デフォルトの名無しさん [2009/07/31(金) 18:02:03 ]
>>228
期待age

233 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 04:17:10 ]
それをここでやるのはスレ違い。

234 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 08:51:21 ]
逃げる気か?

235 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 10:11:53 ]
>>234
あんた馬鹿?

236 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 12:43:12 ]
逃げやがったな。口だけ達者で、ほんとは何も出来ないヤツw

237 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 12:45:19 ]
>>236
あんた馬鹿?

238 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 13:24:30 ]
負け犬めガッ!一生逃げ回ってろ



239 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 13:29:08 ]
なにこの粘着質

240 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 13:30:20 ]
質問者でしょ。それ以外に利益のある人はいない

241 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 13:33:21 ]
人生の敗北者!

242 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 13:44:54 ]
質問者はもっと回答者に敬意を持って接しろ

243 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 14:01:48 ]
愉快犯の荒らしだろ。放置推奨

244 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 23:44:50 ]
228 名前:デフォルトの名無しさん[sage] 投稿日:2009/07/31(金) 16:40:25
  Javaでも20行未満で書けるレベルの処理だろうに。

     ↑
できもしないことを、いい加減に書くのは、質問者に対して失礼。
第三者も見ていて不愉快。
おまいこそ最悪の荒らし!

245 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 00:07:19 ]
そんなに粘着する必要あるのかと。

>>228が無知で、何も知らずに発言しちゃっただけかも知れないんだぜ?
くだらないプライドを守っている暇があったら、勉強して技術向上して
人生をエンジョイした方が、オタク(というかハッカー精神)的に
意味のあるものになるんじゃないのかね?

246 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 00:26:43 ]
なにしにきたんだよ もう帰れよ

247 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 06:43:38 ]
Javacに一行の文字数制限があったかどうかが
気になってしようがないわけだが。

248 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 11:29:02 ]
無知で、何も知らないならレスしないでください。



249 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 11:42:35 ]
そもそも 204って質問だったのか?
アドバイスが欲しいらしいのはわかるが、お願いします的なセリフは何も書いてないだろ
ウゼー独り言延々書き込んでるやつがいるなぁ位の認識だったんだが。

250 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 16:12:46 ]
珍しく伸びていると思えばこれか


251 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 16:38:58 ]
喧嘩嫌

252 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 16:54:39 ]
>お願いします的なセリフは何も書いてないだろ

www
苦しい言い訳。
「お願いします」口調なら、「Javaでも20行未満で書けるレベルの処理」になるのかい?

253 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 16:59:48 ]
まあ書いてやってもいいかな、くらいだけどな

254 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 23:12:00 ]
>>253
中学生2年生かおまいは

255 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 05:00:11 ]
中学生はジャポニカ学習帳でも焼いて食ってろ

256 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 07:08:27 ]
中学二年生にだって天才はいるかもだろ
ニヤニヤと見守るのがベター

257 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 13:34:29 ]
おっと〜!自称「天才」中学2年生現る!

・・・で?20行で書けないの?天才さんw

258 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 13:35:10 ]
今なら30行に負けてあげてもいいんだけど



259 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 19:18:18 ]
マジキチ

260 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 19:21:17 ]
土日は遊んでたので見てなかったがまだやってんのか。ヒマだね〜

261 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:25:05 ]
どうした?30行でも不足か?
そっちが20行と言ったから20行なわけで。
べつに、40行でも50行でも構わんのだがな。

262 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:27:15 ]
マジキチ

263 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:37:57 ]
>Javaでも20行未満で書けるレベルの処理だろうに。

こいつ、恥ずかしくなって逃げたのか。布団かぶって泣いてるのか?

264 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:43:09 ]
マジキチ

265 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 23:36:06 ]
なんだこの流れ
Javaよくわからんから20行が無茶ぶりなのかどうか知らんけど
一体何が夏厨の琴線に触れちゃったの?
質問者不在で誰も求めてないコード請求してもしょーがなくね?

266 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 23:43:39 ]
生理の日かアレな人かどちらか

267 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 23:49:27 ]
javaで20行書くのに、いったい何日かかってんだよ。
速いとこコードを晒せ。それですべて解決する話だろ?

268 名前:デフォルトの名無しさん [2009/08/03(月) 23:55:01 ]
マジキチ



269 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 07:15:52 ]
おはよう!10行くらい書けた?まだかな?

270 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 07:38:06 ]
酔っぱらいに絡まれた感じってこんなんだよな

271 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 08:03:12 ]
schemeでCSVパーサを書いた
BNF通りのCSVの定義が19行、呼び出し8行、コンビネータパーサ80行

しかしよ、実はCSVのパースなんか全く関係なくて
問題はDecimalFormatのパースじゃねーか

ttp://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/java/text/DecimalFormat.html
ここにBNFライクな仕様が載ってるから
これをパース後数値にして、コンマ/改行で区切って出力すりゃいい
楽をするならJParsec

272 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 08:29:37 ]
Javaなら20行で書ける!

273 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 09:08:46 ]
そもそも大抵の言語は1行にいくらでもつめられるからできて当たり前ww
pythonだと難しいかもな。

274 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 09:17:44 ]

世間を知らない井の中の蛙

275 名前:204 mailto:sage [2009/08/04(火) 09:41:26 ]
土日は自宅プロバイダの書込制限ですまそ。現状はこんな感じ。網羅的テストはまだ。
エスケープ処理が多重にかかるのでちとわかりにくいかも。

引用符の外側を一撃で取れないので、
内側の退避と復旧手順が入って無駄に複雑になってます。
引用符のパースはjavaでかけるべきだったかな…


/**
* 正規表現パターン文字列と、置換文字列で1セット。上から順に解釈適用する。
*/
public static final String[][] FORMAT_FILTER_ARRAY = {
//////////////////////
//浮動小数点対応
//引用符の中のEだけをEEに退避
{"([^']+)(')([^']+)(E)([^']+)(')([^']+)", "$1$2$3EE$5$6$7"},
//浮動小数点のEをE+に
{"(.*)([#0])(E)([#0])(.*)", "$1$2E\\+$4$5"},
//退避したEEをEに戻す
{"([^']+)(')([^']+)(EE)([^']+)(')([^']+)", "$1$2$3E$5$6$7"},
//////////////////////
// シングルクォート囲みをダブルクォート囲みに
{"(')([^']+)(')", "\"$2\""},
{"''", "'"},
//////////////////////////////
//多重エスケープ対応
//
//多重にエスケープ処理が走るため。\1個でも\を出せるように倍にしておく。
{"\\\\", "\\\\\\\\"}
};


276 名前:204 mailto:sage [2009/08/04(火) 09:43:17 ]
あと、変換対象データが整数の場合だけの処理も入れざるを得なくなった。
小数点を最後に残すExcelの仕様のせい。

/**
* 整数値の後ろの余分な小数点を削除する。
* ここでは引用符は"に、浮動小数点はE+に変換後なので注意。
*/
public static final String[][] DOT_FILTER_ARRAY = {
//////////////////////
//整数の場合の余分な小数点対応(浮動小数点で無い場合)
//引用符の中の.#を..#に退避
//{"([^\"]+)(\")([^\"]+)(\\.#+)([^\"]+)(\")([^\"]+)",
{"([^\"]*)(\")([^\"]*)(\\.#+)([^\"]*)(\")([^\"]*)",
"$1$2$3\\.$4$5$6$7"},
//浮動小数点の#.#E#を#..#E#に退避 上の変換とは重ならない。
{"(.*)([0#])(\\.#+E\\+[0#])(.*)", "$1$2\\.$3$4"},
//上記変換対象にならなかった-つまり..#でない.#+を削除
{"(.*)([^\\.])(\\.#+)(.*)", "$1$2$4"},
//浮動小数点の#..#E#を#.#E#に復旧。引用符の中の外し方がわからない。
{"(.*)([0#])(\\.)(\\.#+E\\+[0#])(.*)", "$1$2$4$5"},
//引用符の中の..#を.#に復旧
//引用符の中にもともと..#があっても、...#になって..#に戻るはず。
{"([^\"]*)(\")([^\"]*)(\\.)(\\.#+)([^\"]*)(\")([^\"]*)",
"$1$2$3$5$6$7$8"}
};

277 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 09:49:56 ]
これ見たら >>218 とかブン殴りたくなってきたんだが。

278 名前:204 mailto:sage [2009/08/04(火) 09:51:49 ]
20行の成否はどうでもいいんだけど、もし可能であれば教示していただけるとうれしい。
仕事はともかく、美しいコードには感動があるのでね。
(とはいえ、他人が見てわからないコードはよろしくないので、
無理に圧縮した20行より、読みやすい100行の方がいいけど。)

>>224
n回フィルターすると、フィルター相互の矛盾衝突のチェックがn(n-1)必要になるから、
フィルターが増えるほど加速的に困難になる…という趣旨ですよね。
しかし、3行1セットで1個の処理をするフィルターを作成し、
そのセットが他には絶対に影響を与えない堅固なものであれば、
必ずしもn(n-1)にはならないのではないか…と思って手をつけたわけですが…
しかし実際やってみるとそうはなってませんな…引用符処理が誤算でした。



279 名前:デフォルトの名無しさん [2009/08/04(火) 09:56:00 ]
おい、ここはニートのスレですか?

280 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 09:59:41 ]
なんだなんだ、また日記が始まるのか

281 名前:204 mailto:sage [2009/08/04(火) 10:05:11 ]
いやいや、みなさんオチがついてないと気持ち悪いでしょ。サービスのつもりだったんだけど。
もう一区切りついたんで書き込みやめとくよ。(何が出来て何が出来ないかはわかったという趣旨)
あと>>224さんの'''hoge' 難問ですわ…ご指摘ありがとうございました。

282 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 10:48:27 ]
あーウザかった

283 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 11:00:43 ]
マジキチ

284 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 12:21:32 ]
Javaでも20行未満で書けるレベルの処理だろうに。

285 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 12:31:48 ]
  /\___/\
/ /    ヽ ::: \
| (●), 、(●)、 |    / ̄ ̄ ̄ ̄ ̄ ̄ ̄
|  ,,ノ(、_, )ヽ、,,   |  < まーたはじまった
|   ,;‐=‐ヽ   .:::::|    \_______
\  `ニニ´  .:::/
/`ー‐--‐‐―´´\

286 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 21:43:50 ]
マジキチ

287 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 21:52:53 ]
    /:::::::ヽ____/::::::::ヽ、
   丿 ::.__  .:::::::::::::  __  ::::ヽ_       ,. 、       /   /
  / /。 ヽ_ヽv /: /。ヽ  ::::::ヽ    ,.〃´ヾ.、  /  /
 / / ̄ ̄√___丶  ̄ ̄\  ::::| / |l     ',  / /
 | .:::::::::: / / tーーー|ヽ     ..::::: ::|r'´  ||--‐r、 ',   javaなら20行で書ける!!
 | .:::::.  ..: |    |ヽ   .,..ィ'´     l',  '.j '.    javaなら20行で書ける!!
 | :::    | |⊂ニヽ| |  'r '´         ',.r '´ !|  \
 | :    | |  |:::T::::| !  l!     ....:.:.:.:.:.:ヽ、   ,l    \
 \:    ト--^^^^^┤   ゝ、.,_ ---‐‐‐----ゝ、ノ

288 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 22:34:41 ]
マジキチ



289 名前:デフォルトの名無しさん mailto:sage [2009/08/05(水) 15:37:17 ]
>>Javaなら20行でできる
専用スレ立ててやれ

290 名前:デフォルトの名無しさん [2009/08/05(水) 16:35:23 ]
  /\___/\
/ /    ヽ ::: \
| (●), 、(●)、 |    / ̄ ̄ ̄ ̄ ̄ ̄ ̄
|  ,,ノ(、_, )ヽ、,,   |  < まーたはじまった
|   ,;‐=‐ヽ   .:::::|    \_______
\  `ニニ´  .:::/
/`ー‐--‐‐―´´\

291 名前:デフォルトの名無しさん mailto:sage [2009/08/05(水) 17:57:53 ]
>>289
もう終わった話に一人で何言ってんの?

292 名前:デフォルトの名無しさん mailto:sage [2009/08/05(水) 18:09:20 ]
  /\___/\
/ /    ヽ ::: \
| (●), 、(●)、 |    / ̄ ̄ ̄ ̄ ̄ ̄ ̄
|  ,,ノ(、_, )ヽ、,,   |  < まーたはじまった
|   ,;‐=‐ヽ   .:::::|    \_______
\  `ニニ´  .:::/
/`ー‐--‐‐―´´\

293 名前:デフォルトの名無しさん mailto:sage [2009/08/05(水) 23:40:59 ]
perlで7行スレは盛り上がったのになんだこの流れ

294 名前:デフォルトの名無しさん [2009/08/05(水) 23:51:53 ]
  /\___/\
/ /    ヽ ::: \
| (●), 、(●)、 |

295 名前:デフォルトの名無しさん mailto:sage [2009/08/06(木) 09:14:15 ]
正規表現使うんならperlかpythonあたりいくだろ。javaはないわ。

296 名前:デフォルトの名無しさん mailto:sage [2009/08/06(木) 09:36:03 ]
正規表現使うのが目的ならな。

297 名前:デフォルトの名無しさん mailto:sage [2009/08/06(木) 10:22:39 ]
正規表現使わなくてもjavaなら20行未満で書けるよ。

298 名前:デフォルトの名無しさん mailto:sage [2009/08/06(木) 10:53:47 ]
>>297
おい!できるならとっとと書いてみろよ。
逃げんじゃねーぞこの口だけ野郎が!



299 名前:デフォルトの名無しさん mailto:sage [2009/08/06(木) 14:40:55 ]
>>297
あ?どうしたコラ!
はやくしろよ。
また逃げたのかなw 布団被って泣いているのかな?w

300 名前:デフォルトの名無しさん mailto:sage [2009/08/06(木) 15:07:24 ]
人にものを頼む態度じゃないな

301 名前:デフォルトの名無しさん mailto:sage [2009/08/06(木) 15:25:36 ]
ああん?

 「書ける」 とは言ったが 「書く」 とは言ってない。
 書いて欲しかったら頭を下げてお願いしろ。
 それが礼儀だろ。

・・・って言いたいのか?中学生か、おまいは!

302 名前:デフォルトの名無しさん mailto:sage [2009/08/06(木) 15:41:38 ]
と、小学生みたいな発言している人がいますね

303 名前:デフォルトの名無しさん mailto:sage [2009/08/06(木) 17:35:45 ]
で、いつになったら発表してくれるの?>> 20行クン
今なら30行に負けてあげてもいいと言ってるんだし、
そもそも、こっちは行数なんて問題にしてないから
100行だろうが1000行だろうが好きなだけ費やしてもいいんだよ。
早く書いてごらんよ。どうせ書けないんでしょ?
書けもしないのにテキトーなことを言ったんでしょ?

304 名前:デフォルトの名無しさん mailto:sage [2009/08/06(木) 18:28:46 ]
怒ってもいいことなんてひとつもない。

305 名前:デフォルトの名無しさん mailto:sage [2009/08/06(木) 20:07:09 ]
  /\___/\
/ /    ヽ ::: \
| (●), 、(●)、 |    / ̄ ̄ ̄ ̄ ̄ ̄ ̄
|  ,,ノ(、_, )ヽ、,,   |  < まーたはじまった
|   ,;‐=‐ヽ   .:::::|    \_______
\  `ニニ´  .:::/
/`ー‐--‐‐―´´\

306 名前:デフォルトの名無しさん mailto:sage [2009/08/06(木) 20:11:55 ]
  /\___/\
/ /    ヽ ::: \
| (●), 、(●)、 |    / ̄ ̄ ̄ ̄ ̄ ̄ ̄
|  ,,ノ(、_, )ヽ、,,   |  < まーたはじまった
|   ,;‐=‐ヽ   .:::::|    \_______
\  `ニニ´  .:::/
/`ー‐--‐‐―´´\

  /\___/\
/ /    ヽ ::: \
| (●), 、(●)、 |    / ̄ ̄ ̄ ̄ ̄ ̄ ̄
|  ,,ノ(、_, )ヽ、,,   |  < まーたはじまった
|   ,;‐=‐ヽ   .:::::|    \_______
\  `ニニ´  .:::/
/`ー‐--‐‐―´´\

  /\___/\
/ /    ヽ ::: \
| (●), 、(●)、 |    / ̄ ̄ ̄ ̄ ̄ ̄ ̄
|  ,,ノ(、_, )ヽ、,,   |  < まーたはじまった
|   ,;‐=‐ヽ   .:::::|    \_______
\  `ニニ´  .:::/
/`ー‐--‐‐―´´\

307 名前:デフォルトの名無しさん mailto:sage [2009/08/06(木) 22:54:49 ]

   /         ドッカン
  / /    ,,_     ドッカン
 ━━━━━'), )=         ☆ゴガギーン
      ∧_∧ヽ\         /          / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     (   ) 〉 〉_ _ ____      ∧_∧ ∠  おらっ!20行で書いてみろ
     / ⌒ ̄ / "'''"'|    ||     (`∀´ )  \___________
      |   | ̄l    |    |/      /     \
.      |    |  |     |    ||      | |   /\ヽ
       |   |  .|     |    |     へ//|  |  | |
      (   |  .|   ロ|ロ   ゙!l''ヽ/,へ \|_  |   | |
       | .lヽ \ |    |   ヽ\/  \_ / ( )
      | .|  〉 .〉    |    |        | |
     / / / / |     |    〈|      | |
     / / / / |     |    ||      | |
    / /  / / └──┴──┘       | |

308 名前:デフォルトの名無しさん mailto:sage [2009/08/07(金) 02:26:58 ]
ウケるのは最初の一回だけだぞ。




309 名前:デフォルトの名無しさん mailto:sage [2009/08/07(金) 10:12:05 ]
夏休みが終わるまではこんな調子が続くだろうからいくら言っても無駄だろうね。

310 名前:デフォルトの名無しさん [2009/08/13(木) 17:30:46 ]
なスレ汚し奉りそ

311 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 22:48:37 ]
置き換えや検索を希望する訳ではないのですが、
[!#-'*-;=?-~]
が一体どういう動きをしているか知りたいです
一応説明では「URL文字にマッチ」となっているのですが、
どこがどのようにしてそれらの文字にマッチするよう働いているのか分かりません
環境は鬼車です

312 名前:311 mailto:sage [2009/08/14(金) 00:06:06 ]
すみません自己解決しました
しばらく調べていたら範囲指定がらみで動いていたということが分かりました
どうもすみません

313 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 19:35:58 ]
●正規表現の使用環境
鬼車

●検索か置換か?
置換

●説明
( から ) までの文字列にマッチ
マッチした文字列中に ABC が含まれている場合は
置換時に ABC を \1 で参照できる正規表現

●対象データ
smp("桁数:" + strABC.length);
smp("行数:" + cnt);

●希望する結果
smp(ABC);
smp();


検索文字列
\([^\)]*?(ABC)?[^\)]*?\)
置換文字列
(\1)
で試してみたのですが、ABCがある行も無い行も全て
smp(); になってしまいました。

どのように記述すればABCを取り出せるのか教えてください。

314 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 20:48:23 ]
? 付け過ぎ

315 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 21:25:22 ]
*?(ABC)? の部分が、"何もない" 状態にいきなりマッチするからじゃね?
場合分けの部分を親言語に任せる方が、文字列の否定を使うより楽かもしれない。

316 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 21:54:46 ]
エディタの置換機能で実現したいので、こうなってます。
.*?の?は、付けておかないと(ABC)?.*?の部分に入ってくれないかと思い付けました。
結果的にマッチしていないので無意味ですが。。。

何か方法はありませんか?

317 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 22:13:33 ]
3ステップに分ければ簡単だが
(1) smp\(.*(ABC).*\) → xxxxxxxxxxx(\1)
(2) smp\(.*\) → smp()
(3) xxxxxxxxxxx\((.*)\) → smp(\1)

318 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 22:30:30 ]
ABCがマッチする場合|ABCがマッチしない場合



319 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 22:59:43 ]
Javaでも20行未満で書けるレベルの処理だろうに。

320 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 23:02:20 ]
正規表現は魔法じゃ無い!






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<175KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef