- 1 名前:デフォルトの名無しさん [2017/03/15(水) 02:04:35.47 ID:e01p03UP.net]
- Regular Expressionスレです。
質問する場合は必ず実装言語や処理系ソフトウェア名を示してください。 前スレ Regular Expression(正規表現) Part13 echo.2ch.net/test/read.cgi/tech/1415149975/ 次スレは>>980宜しく 天ぷら等2以降
- 1018 名前:977 mailto:sage [2019/09/17(火) 12:02:24.99 ID:aFTX7+W5.net]
- >>979
を修正した const str = `101 dogs 30 8 year old humans` const lines = str.split( "\n" ); // 配列 const results = lines.map( line => { var ary = new Array( 2 ) const pos = line.indexOf( " " ); if( pos === -1 ) { // 見つからない // 何かの処理 } else { ary[ 0 ] = line.substring( 0, pos ) ary[ 1 ] = line.substring( pos + 1 ) } return ary } ); console.log( results ); // [ [ '101', 'dogs' ], [ '30', '8 year old humans' ] ]
- 1019 名前:デフォルトの名無しさん mailto:sage [2019/09/17(火) 16:12:25.16 ID:sjKTVv5w.net]
- amazonもダメみたいだね、本の紹介しようとしたら弾かれた
- 1020 名前:983 mailto:sage [2019/09/17(火) 17:07:52.35 ID:aFTX7+W5.net]
- Amazon も、半角で書けないだろ
一番恐ろしいのは、はてなブログ! 書き込み禁止画面が出ずに、いきなり吸い込まれて、アクセス禁止にされる! 同様に、twitter の長いURL も、吸い込まれるものがあるらしい! 5ch で、しつこく宣伝する香具師をはめるために、いきなりのアク禁! MANGO 板に書き込んで、何がNG ワードが、地道に判定していくしかない
- 1021 名前:デフォルトの名無しさん [2019/09/17(火) 17:46:48.25 ID:+bGUkqkJ.net]
- test
https://www.ama%7Aon.co.jp/dp/4938939703
- 1022 名前:デフォルトの名無しさん mailto:sage [2019/09/17(火) 17:53:38.97 ID:Xou3E6HC.net]
- はてブのURL、5ちゃんに書けないのか。気づいてなかったわ。
- 1023 名前:デフォルトの名無しさん [2019/09/17(火) 17:56:58.73 ID:+bGUkqkJ.net]
- test
d.h%61tena.ne.jp/keyword/%A5%E2%A5%CE%A5%B7%A5%EA%A5%C3%A5%AF%A5%AB%A1%BC%A5%CD%A5%EB
- 1024 名前:デフォルトの名無しさん [2019/10/02(水) 17:34:34.60 ID:dOlpIXop.net]
- U . M . E
- 1025 名前:デフォルトの名無しさん [2019/10/12(土) 20:41:17.72 ID:VAjNOt6S.net]
- 以下を正規表現で行うにはどうしたらよいでしょうか。
-----元データ------------------ <aaa bbb ccc ddd> <eee> ffff ggg <hhh iiii> ----------------------------- -----欲しいデータ---------------- aaa bbb ccc ddd eee ffff ggg hhh iiii ------------------------------
- 1026 名前: mailto:sage [2019/10/12(Sat) 20:46:20 ID:osgjxuFW.net]
- 改行無視のオプション+<>の間を取得して改行を空白に変更でどう?
- 1027 名前:デフォルトの名無しさん mailto:sage [2019/10/12(土) 22:51:54.37 ID:7TGqmTiW.net]
- >>993
Ruby $ cat input.txt | ruby -e 'puts ARGF.read.gsub(/<(.*?)>/m) { |m| $1.gsub("\n", "") }' Node $ cat input.txt | node -e 'process.stdout.write(fs.readFileSync(0).toString().replace(/<([\s\S]*?)>/mg, ($0,$1)=>$1.replace(/\n/g, "")))' sed $ echo $(cat input.txt) | sed -E 's/<([^>]*)>/\n\1\n/g' | sed -e '/^ *$/d' | sed -e 's/^ *//' sedのは一旦改行削除して、<..>の前後に改行追加して、空行削除して、行頭の空白を削除してる
- 1028 名前:デフォルトの名無しさん mailto:sage [2019/10/13(日) 01:09:33.88 ID:Gu1oNPJo.net]
- Ruby で、
text = <<"EOT" <aaa bbb ccc ddd> <eee> ffff ggg <hhh iiii> EOT # m option は、multi-line。$1 は、キャプチャー部分。 # [^>]+ は、> 以外の文字が、1文字以上続く puts text.gsub( /<([^>]+)>/m ) { |matched| $1.gsub( "\n", " " ) } >>995 >$1.gsub("\n", "") "" は、" "(半角空白)の間違いだろ
- 1029 名前: mailto:sage [2019/10/13(Sun) 01:37:59 ID:5y3mzviq.net]
- >>996
コピペしたら元データに行末スペースが入ってたからそうしたんだけどこれは5chの仕様なのかな? 行末スペースがないなら空文字じゃなく半角スペースに置換だね
- 1030 名前: mailto:sage [2019/10/13(Sun) 03:33:31 ID:Gu1oNPJo.net]
- 5ch からコピーすると、行末に半角空白が入るから、
漏れは、Ruby で削除してる # クリップボード内の複数行文字列の、各行の先頭・末尾から、 # 連続する空白類を除去して、クリップボードに入れる str = `powershell Get-Clipboard` str.encode! Encoding::UTF_8, Encoding::CP932 # UTF_8 へ変換 ary = str.each_line.map( &:strip ) # 連続する空白類を除去する IO.popen( 'clip', 'w:cp932' ) do | clip | # CP932 へ戻す clip.print( ary.join "\n" ) end
- 1031 名前:デフォルトの名無しさん [2019/10/13(日) 07:48:23.30 ID:0NSyRtEU.net]
- >>994-996
皆さんありがとうございました。 後方参照をさらに置換すれば良かったんですね。そんな方法があったとは!! 助かりました。
- 1032 名前: mailto:sage [2019/10/13(Sun) 22:01:19 ID:5y3mzviq.net]
- >>998
エディタのコマンドで対応できることだから わざわざスクリプト書くのはちょっとオーバーキルかな
- 1033 名前: mailto:sage [2019/10/13(Sun) 22:05:59 ID:w1EMiXuT.net]
- VScodeの正規表現検索、置換はjavascriptだろうか?
- 1034 名前: mailto:sage [2019/10/13(Sun) 22:42:48 ID:5y3mzviq.net]
- >>1001
ripgrep
- 1035 名前:1001 [Over 1000 Thread .net]
- このスレッドは1000を超えました。
新しいスレッドを立ててください。 life time: 942日 20時間 38分 13秒
- 1036 名前:過去ログ ★ [[過去ログ]]
- ■ このスレッドは過去ログ倉庫に格納されています
|

|