1 名前:デフォルトの名無しさん [2013/12/17(火) 14:19:52.00 ] Regular Expressionスレです。 質問する場合は必ず実装言語や処理系ソフトウェア名を示してください。 前スレ Regular Expression(正規表現) Part11 toro.2ch.net/test/read.cgi/tech/1362913813/ 天ぷら等2以降
27 名前:25 mailto:sage [2013/12/18(水) 22:54:58.53 ] >>26 いえ、HTMLのリンクタグがあるじゃないですか 投稿のときはHTMLのリンクタグを書いてなくてもURLを投稿するだけでリンクタグが適用されるじゃないですか
28 名前:デフォルトの名無しさん [2013/12/18(水) 23:15:24.49 ] 要はurlをリンクタグにすればいいだけか?
29 名前:デフォルトの名無しさん mailto:sage [2013/12/18(水) 23:36:58.18 ] 釣りなのか本当にバカなのかわからん質問が多い板だぜまったく
30 名前:デフォルトの名無しさん mailto:sage [2013/12/19(木) 00:32:05.32 ] >>27 リンクじゃなくてアンカーだと思うが。 それなら、置換対象となる文字列と、置換後の期待するアンカー要素を提示すれば答えられるのでは。 ということが>>2 に書いてある。
31 名前:デフォルトの名無しさん mailto:sage [2013/12/19(木) 18:18:46.43 ] PHPの正規表現を知らないからPerlで $txt=~s/(http:[a-z])/"<a href='$1'>$1</a>"/;
32 名前:デフォルトの名無しさん mailto:sage [2013/12/19(木) 18:31:22.37 ] >>31 スキームはhttpだけじゃないし、その後もa-zだけじゃないだろう。 www.w3.org/Addressing/URL/5_BNF.html
33 名前:デフォルトの名無しさん [2013/12/19(木) 19:00:10.10 ] http ttp https ttps ftp 辺りかな
34 名前:デフォルトの名無しさん mailto:sage [2013/12/19(木) 19:02:44.69 ] >>31 mailtoもあるし、geoとかtelとか独自っぽいものもあったりなかったり。
35 名前:デフォルトの名無しさん [2013/12/19(木) 19:44:40.19 ] mailtoはリンクタグの中にしか書かないからURL文字列のリンク化には必要なくない?
36 名前:デフォルトの名無しさん mailto:sage [2013/12/19(木) 19:49:05.13 ] URLとメールアドレスの違いってなんだっけ 文章に含まれてるURLっぽい部分が URLかメールアドレスか判別するのって 正規表現でできるかね
37 名前:デフォルトの名無しさん mailto:sage [2013/12/19(木) 19:53:57.46 ] 書けないわけじゃないだろ。 メールの署名とかに書くぞ。 単にURLと見做す補完機能が仕様にないだけ。それは正規表現の問題ではない。
38 名前:デフォルトの名無しさん [2013/12/19(木) 20:03:41.12 ] $line =~s/((http|ttp|https|ttps|ftp|url|mailto):[a-zA-Z0-9\$\-\_\@\.\&\+\!\*\"\'\(\)\=\;\/\#\?\s])/"<a href='$1'>$1</a>"/eg;
39 名前:デフォルトの名無しさん [2013/12/19(木) 20:25:27.40 ] >>38 結果がおかしいぞ http:/ までしかリンクにならない
40 名前:デフォルトの名無しさん mailto:sage [2013/12/19(木) 20:31:37.69 ] +が抜けてるんだろ $line =~s/((http|ttp|https|ttps|ftp|url|mailto):[a-zA-Z0-9\$\-\_\@\.\&\+\!\*\"\'\(\)\=\;\/\#\?\s]+)/"<a href='$1'>$1</a>"/eg;
41 名前:デフォルトの名無しさん mailto:sage [2013/12/19(木) 20:35:28.31 ] []の中はエスケープ不要なんじゃなかった。言語の方のエスケープなのかな。
42 名前:デフォルトの名無しさん [2013/12/19(木) 20:41:06.60 ] 試してみたけどエスケープないとエラーが出た。 Perlの仕様だと思われ。
43 名前:デフォルトの名無しさん mailto:sage [2013/12/19(木) 20:46:23.51 ] >>40 それだけじゃないからw 「+」付けてもこうなるwww $line = "You have to visit www.seiki.com/ and www.hyougen.com/ !!"; $line =~s/((http|ttp|https|ttps|ftp|url|mailto):[a-zA-Z0-9\$\-\_\@\.\&\+\!\*\"\'\(\)\=\;\/\#\?\s]+)/"<a href='$1'>$1<\/a>"/eg; print $line; You have to visit <a href='www.seiki.com/ and http'>www.seiki.com/ and http</a>://www.hyougen.com/ !!
44 名前:デフォルトの名無しさん mailto:sage [2013/12/19(木) 21:04:59.70 ] \sが余計なんだろ $line =~s/((http|ttp|https|ttps|ftp|url|mailto):[a-zA-Z0-9\$\-\_\@\.\&\+\!\*\"\'\(\)\=\;\/\#\?]+)/"<a href='$1'>$1</a>"/eg;
45 名前:デフォルトの名無しさん [2013/12/19(木) 21:57:08.85 ] >>44 こういう正規表現って毎回書くの? それとも関数作って関数の中にこれ一行だけ書くの?
46 名前:デフォルトの名無しさん mailto:sage [2013/12/19(木) 22:04:16.92 ] >>45 どちらがわかりやすいかで考えれば 答えは自ずと出てくるだろ。
47 名前:デフォルトの名無しさん mailto:sage [2013/12/19(木) 22:13:26.50 ] ここってUnEditorの正規表現の質問もOK?
48 名前:デフォルトの名無しさん mailto:sage [2013/12/19(木) 22:18:35.54 ] >>45 「こういう」が何を指してるか知らんけど、今はサブルーチンにしてしまうのが一般的。 サブルーチン作ると重くなるとか言ってたマシンスペックの低い時代ならマシンスペックと相談だろうね。 今はマシンスペックがかなり高いから、余程のことがない限り可読性重視。 あと、保守性の問題もある。 例えば>>44 の正規表現からftpを外そうと思ったときに、あちこちに同じ正規表現があったら全部変更していく必要がある。 サブルーチンにしておけば1箇所変更すればよい。
49 名前:デフォルトの名無しさん [2013/12/19(木) 22:50:21.72 ] >>47 調べたら鬼車じゃん いいんじゃね
50 名前:デフォルトの名無しさん [2013/12/19(木) 23:25:32.19 ] ●Regular Expressionの使用環境 Perl 5.10.1 ●検索か置換か? 置換 ●説明 CSSにおいて、任意のクラスの任意の項目を変更したい ●対象データ ・・・ここまで他のクラス・・・ .test{ background-color: #ffffff; color: #000000; padding: 0px; margin: 0px; } ・・・ここから他のクラス・・・ ●希望する結果 例えば、testクラスのpaddingを4pxにしたい ・・・ここまで他のクラス・・・ .test{ background-color: #ffffff; color: #000000; padding: 4px; margin: 0px; } ・・・ここから他のクラス・・・ (クラス内部でインデントのために全角スペースを使っていますが、実際の運用ではタブ1つ分です) (クラスによって項目の数が違います)
51 名前:デフォルトの名無しさん mailto:sage [2013/12/20(金) 03:44:23.37 ] ここは重複スレです。 本スレ誘導 正規表現 Part11 toro.2ch.net/test/read.cgi/tech/1363769640/
52 名前:デフォルトの名無しさん [2013/12/20(金) 03:47:57.61 ] s/(\.test\{[^}]*padding:\s*)[^;]+/$14px/g;
53 名前:デフォルトの名無しさん mailto:sage [2013/12/20(金) 03:52:58.58 ] >>51 チョンの本スレ宣伝はここにも来たか
54 名前:デフォルトの名無しさん mailto:sage [2013/12/20(金) 04:49:30.72 ] part10 1340383120.dat 2012/06/23(土) 01:38:40.22〜2013/03/12(火) 22:57:24.75 part11 1362913813.dat 2013/03/10(日) 20:10:13.34〜2013/12/19(木) 20:34:23.12 偽スレ 1363769640.dat 2013/03/20(水) 17:54:00.46〜 part11が立ってから10日遅れ part10が埋まってからでも8日遅れ もう重複とかいうレベルですらなく、ただの荒らしだな 何が嫌でこんな宣伝してるのか……part10終盤を再現したいとか? toro.2ch.net/test/read.cgi/tech/1363769640/102 102 名前:デフォルトの名無しさん[sage] 投稿日:2013/12/17(火) 18:44:06.65 重複重複うるさいから確認してみたら、 正規の次スレが立って1週間以上経ってからこの偽物スレが立ってる。 どう考えても確信犯。 このスレを立てたのは恐らく本物のキチガイ。
55 名前:デフォルトの名無しさん mailto:sage [2013/12/20(金) 07:02:29.39 ] >>54 スレタイを勝手に変えてしまったから、どちらとも言えないけどね。 なんとかスタンダードとやらで、こちらが正統でいいんじゃないの。
56 名前:デフォルトの名無しさん [2013/12/20(金) 16:49:34.58 ] 正規表現って環境依存のイメージだけど、いわゆる「正規表現」ってあるの? 例えばC言語でも、 コンパイラの独自拡張を除いたいわゆる「C言語」ってあるじゃん。 そういう意味でいわゆる「正規表現」ってあるの?
57 名前:デフォルトの名無しさん mailto:sage [2013/12/20(金) 18:55:07.78 ] >>56 POSIXとかPCREのこと? CもANSI C89とかいろいろあるでしょう。
58 名前:デフォルトの名無しさん [2013/12/20(金) 19:07:50.28 ] >>56 Posix正規表現だけでもSRE、BRE、EREと3種あるくらいで所謂とか本家とかは 聞いたことないですね。 C++11でEcmascriptの正規表現もサポートとしていることや、利用者数、使い やすさ等を鑑みてJSの正規表現を中心に考えてみてはどうでしょうか。 自分の製品に正規表現エンジンを組み込む場合は。
59 名前:デフォルトの名無しさん mailto:sage [2013/12/20(金) 21:05:18.16 ] >>52 短くていいな。 俺も昨日ちょっと考えてたけど、もうちょい長くなった。
60 名前:50 mailto:sage [2013/12/20(金) 22:57:20.64 ] >>52 ありがとうございます! もう少しでCSSを解析してハッシュの配列にしてからやるところでした!
61 名前:デフォルトの名無しさん mailto:sage [2013/12/21(土) 02:56:45.92 ] >>55 part10終盤の様相からしたら仕方ない。 スレタイ変えた程度であの手の馬鹿が引っ込むってのも不自然だが、 自演だとしても質問スレ系みたいに変なルール追加されたわけでもなさげだし。
62 名前:デフォルトの名無しさん mailto:sage [2013/12/21(土) 03:04:06.35 ] パーサとかって内部では正規表現使ってパースしてんのかね? 何のパーサかにもよるだろうけど、RSSのパーサとか
63 名前:デフォルトの名無しさん mailto:sage [2013/12/21(土) 03:50:16.65 ] >>62 見てみりゃいいじゃん。
64 名前:デフォルトの名無しさん mailto:sage [2013/12/21(土) 03:53:20.96 ] 正規表現も使っているが、 正規表現だけでは限界があるので 単語の判断ぐらいに使ってる。
65 名前:デフォルトの名無しさん mailto:sage [2013/12/21(土) 04:00:03.52 ] >>62 RSSのパーサってか、XMLのパーサだな。
66 名前:デフォルトの名無しさん mailto:sage [2013/12/21(土) 04:39:34.92 ] そもそも正規表現自体が形式言語理論畑の言葉・概念がパターンマッチに流用されたものだからなぁ… 正しい定義で言うといわゆる正規表現は正規表現と呼ぶべきではないとか言う事になりそうですらある 逆にいわゆる正規表現とは全く異なるBNFとかの方が元の定義で言う正規表現らしかったりすらする程 そしてXMLはExtended BNFで定義されてるから、Extended BNFを正規表現と呼ぶならXMLパーサ=正規表現処理エンジンという事に 真面目に実装の話に戻ると、何らかの正規表現言語で言語を定義してそれをパーサジェネレータに食わせてパーサ作ったりするはず ここで使う正規表現はいわゆる正規表現で無い事も多いが、正規表現を使っているといえば使っている 出力されたパーサには正規表現が含まれ・・・・・・ないんじゃないかなぁ・・・・・・
67 名前:デフォルトの名無しさん mailto:sage [2013/12/21(土) 11:16:20.61 ] JScriptのエンジンって何?
68 名前:デフォルトの名無しさん [2013/12/22(日) 00:37:07.32 ] 質問です C言語のソースコードに以下の条件に従ってスペースを入れたいのですが正規表現でどう書けば良いでしょうか? 1. 関数のカッコの中では、カッコの前後、及びカンマの前後に半角スペースを1つ入れたい 2. 但し、関数の中で文字列が引数になっている場合、その文字列に含まれるカッコやカンマの前後には何も入れない 3. 但し、ソースコード全体では、既に希望通りの半角スペースの入っている部分と、まだ入っていない部分がある 鬼車5.9.2です よろしくお願いします
69 名前:デフォルトの名無しさん [2013/12/22(日) 01:05:58.47 ] >>66 正規表現は文字列の集合を表すもの。 BNFは文脈自由文法を表すもの。 従って、正規表現で表現できるものはBNFでも表現可能だが、逆は真でない。 例えば、XMLの文法を表現するのにBNFが使えるが、正規表現では無理。
70 名前:デフォルトの名無しさん mailto:sage [2013/12/22(日) 01:12:21.33 ] BNFは正規表現ではないの?
71 名前:デフォルトの名無しさん [2013/12/22(日) 01:19:10.65 ] BNFが正規表現であると定義する世界ではORだけあれば全ての言語を記述できる。 可能なすべてのパターンをORでつなげばいいから。
72 名前:デフォルトの名無しさん mailto:sage [2013/12/22(日) 01:21:57.64 ] >>69 あー、右正規文法か左正規文法を表現するのが正規表現で、 文脈自由文法は右正規文法と左正規文法を同時に含みうるのか。 ただどっちにしてもそこで言う正規表現ってこのスレで扱う正規表現じゃ無くてその元ネタの方だよね。
73 名前:デフォルトの名無しさん [2013/12/22(日) 01:25:47.38 ] 君は何が何でも自分が正しいと主張したい人のようだね。
74 名前:デフォルトの名無しさん [2013/12/22(日) 01:26:53.77 ] でも結局のところ、Ajaxとかで取得したRSSをJSで加工するときは正規表現使うよな
75 名前:デフォルトの名無しさん mailto:sage [2013/12/22(日) 01:40:04.42 ] >>74 DOMで扱う場合は使わない
76 名前:デフォルトの名無しさん [2013/12/22(日) 01:48:18.97 ] >>67 JavaScriptの正規表現エンジンはブラウザ独自。 だからIEで挙動が違ったり、Chromeが正規表現のエンジンを高速化したりということがある。 何年か前からブラウザは動作速度合戦になって、各ブラウザ共色々テコ入れしてる。 JavaScriptとその中の正規表現エンジンもかなり動作速度に影響するから当然テコ入れ対象。
77 名前:デフォルトの名無しさん [2013/12/22(日) 01:51:07.17 ] EMCAで規格が決まっています。
78 名前:デフォルトの名無しさん [2013/12/22(日) 02:54:20.70 ] 規格とエンジンは別だろ 規格に基づいてエンジン作るわけだから
79 名前:デフォルトの名無しさん [2013/12/22(日) 02:57:41.75 ] Wikiって文法解析してHTML生成してるけど、あれは正規表現で解析してるの?
80 名前:デフォルトの名無しさん [2013/12/22(日) 03:06:17.95 ] 念のためにきくけど、正規表現で住所を切り分けるのって無理だよな
81 名前:デフォルトの名無しさん [2013/12/22(日) 03:20:59.29 ] >>80 要件による
82 名前:デフォルトの名無しさん [2013/12/22(日) 03:22:31.90 ] IEのJSの正規表現の挙動がおかしいのは昔話題になってなかったっけ。
83 名前:デフォルトの名無しさん mailto:sage [2013/12/22(日) 05:25:17.33 ] >>77 ECMA?
84 名前:デフォルトの名無しさん [2013/12/22(日) 10:09:35.44 ] >>79 全てがそうとは限りませんが、俺が見た範囲ではそうでした。
85 名前:デフォルトの名無しさん [2013/12/22(日) 12:32:08.28 ] PHPです HTMLのIMGタグから、ファイル名と、 もし幅か高さが指定されていればそれも抽出したいです <img src="test.jpg"> <img src="test2.gif" width="200"> <img src="test3.png" width="200" height="160">
86 名前:デフォルトの名無しさん mailto:sage [2013/12/22(日) 12:47:55.74 ] imgタグの仕様が分からなきゃ何とも言えないだろ widthはパーセント指定できるの?構文解析の仕様は?
87 名前:デフォルトの名無しさん mailto:sage [2013/12/22(日) 12:56:13.97 ] >>85 HTMLパーサでパースしろ そしてここには二度と来るな
88 名前:デフォルトの名無しさん [2013/12/22(日) 13:00:48.21 ] >>68 鬼車知らんけど、 ([\(,])([.\s]*?)([,\)]) かな。
89 名前:デフォルトの名無しさん [2013/12/22(日) 13:25:48.13 ] UTF-8でマルチバイト文字にのみマッチさせる正規表現はありますか?
90 名前:デフォルトの名無しさん mailto:sage [2013/12/22(日) 13:34:14.52 ] ASCIIの範囲以外ならマルチバイトだろ。
91 名前:デフォルトの名無しさん [2013/12/22(日) 13:44:18.71 ] >>90 数字だったら\dで表せるけどそういう簡単なのないですか?
92 名前:デフォルトの名無しさん [2013/12/22(日) 14:55:17.89 ] [^アスキー全文字]+
93 名前:デフォルトの名無しさん mailto:sage [2013/12/22(日) 15:38:51.59 ] POSIX文字クラスでググレ
94 名前:デフォルトの名無しさん mailto:sage [2013/12/22(日) 19:33:09.96 ] >>80 四日市市とかで切り分けに失敗する自信がある
95 名前:デフォルトの名無しさん mailto:sage [2013/12/22(日) 20:53:52.69 ] 廿日市市と八日市市、他に何があったかな? 仮に[^:ascii:]{1,6}市?市としても、市名の次に市が付く町名が来たら厄介だな。 POSIX使ってみた([^:ascii:]) 知らない人は「鬼車 正規表現」でググればわかる。 WSHとかでは使えないみたいだけど。
96 名前:デフォルトの名無しさん [2013/12/22(日) 21:53:21.53 ] 俺らの脳は市町村をどうやって切り分けてんだろ
97 名前:デフォルトの名無しさん mailto:sage [2013/12/22(日) 22:37:59.73 ] >>95 四日市には市場町という地名があるようだ…
98 名前:デフォルトの名無しさん [2013/12/22(日) 23:06:47.37 ] ワラタw
99 名前:デフォルトの名無しさん [2013/12/22(日) 23:10:22.38 ] 結局ブラウザごとにJSの正規表現エンジンって違うの?
100 名前:デフォルトの名無しさん mailto:sage [2013/12/22(日) 23:37:00.86 ] >>97 なりたちからして自然だと思うが
101 名前:デフォルトの名無しさん mailto:sage [2013/12/23(月) 01:00:16.43 ] >>80 >>95 もう既存の市町村名から正規表現生成するスクリプト作ってしまったほうが良い気が
102 名前:デフォルトの名無しさん mailto:sage [2013/12/23(月) 07:58:36.38 ] >>101 既存の市町村名全部持って、普通にマッチングした方がいいだろ...
103 名前:デフォルトの名無しさん [2013/12/23(月) 14:36:10.76 ] これだけ注意すればよさそうだな 四日市市 野々市市 廿日市市
104 名前:デフォルトの名無しさん [2013/12/23(月) 14:39:25.15 ] ちなみに八日市市は現存しない www.city.higashiomi.shiga.jp/0000000610.html 平成17年2月11日には、 1市4町(八日市市・永源寺町・五個荘町・愛東町・湖東町)が合併し「東近江市」が誕生しました。
105 名前:デフォルトの名無しさん mailto:sage [2013/12/23(月) 14:42:30.11 ] プログラマを救うために住所表記に対する正規表現の使用を禁止する法律が求められている
106 名前:デフォルトの名無しさん mailto:sage [2013/12/23(月) 15:44:28.03 ] 住所はいろいろあるからねー www.addressmatch.jp/rule.html
107 名前:デフォルトの名無しさん [2013/12/23(月) 19:50:41.11 ] >>68 2番目の条件がきつい
108 名前:デフォルトの名無しさん [2013/12/23(月) 23:14:24.79 ] 引数になってる文字列のコンマを別のものに置き換えて、 それからやったらどうよ それでソースコードのコンマを処理し終わったらもとに戻す [[comma]]とか
109 名前:デフォルトの名無しさん [2013/12/23(月) 23:53:19.75 ] 文字列の中に[[comma]]があったらどうする気だ。
110 名前:デフォルトの名無しさん mailto:sage [2013/12/24(火) 04:03:10.05 ] >>102 大差なくね? ああまあ市町村名DBをそのまま食わせられるからメンテ楽ってのはあるか… しかし一度regexp.exec(str)すれば即結果が得られるってのもそれはそれで楽 >>104 古い住所入れる奴が居るから・・・ >>108-109 メタ文字決めて先にメタ文字のエスケープしろよ、定番だろ。
111 名前:デフォルトの名無しさん [2013/12/24(火) 15:37:26.19 ] クリスマス関連の文字列を見たくないからネットサーフィンの際に クリスマス関連の文字列でマッチしてクリスマス関連の文字列を含むウェブページをフィルタリングしたいのですが どういう正規表現で書けばいいでしょうか
112 名前:デフォルトの名無しさん mailto:sage [2013/12/24(火) 17:47:45.62 ] >>111 s/クリスマス関連/あぼーん/g
113 名前:デフォルトの名無しさん mailto:sage [2013/12/24(火) 19:25:31.28 ] ブラウザの設定をアラビア語とかペルシャ語にしたらどうだい
114 名前:デフォルトの名無しさん [2013/12/25(水) 12:13:30.69 ] s/.*(クリスマス|X'mas).*/あぼーん/g
115 名前:デフォルトの名無しさん [2013/12/25(水) 13:17:37.81 ] Perl 痴漢 $1200.00 \24980000 3桁ごとに「,」を入れたい $1,200.00 \24,980,000
116 名前:デフォルトの名無しさん [2013/12/25(水) 18:08:29.45 ] s/(\d\d\d(\.|$))/,$1/
117 名前:デフォルトの名無しさん mailto:sage [2013/12/25(水) 19:07:10.42 ] このスレにいる奴はこれどれくらいできる? regex.alf.nu/
118 名前:デフォルトの名無しさん mailto:sage [2013/12/25(水) 22:14:50.89 ] >>117 プログラミングの役に立たない無意味な正規表現を作る能力で何の能力を測るのかが不明。
119 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 11:54:11.09 ] 正規表現を使ったただの遊びで、 何か測るとか 考えすぎっつーか余裕なさすぎ
120 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 12:16:44.97 ] >>117 ちゃんとマッチする物作って、点数が低いとかよくわからん。 マッチさせないギリギリを狙うゴルフなんだろか。
121 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 13:58:48.86 ] >>116 それじゃダメだろ
122 名前:デフォルトの名無しさん [2013/12/26(木) 15:39:20.51 ] じゃあお前書いてみろよ
123 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 15:48:59.72 ] >>120 パターンの文字数が少ない方が点数が上がる ドット使いまくり
124 名前:デフォルトの名無しさん [2013/12/26(木) 16:07:49.11 ] Plain strings (205) Anchors (204) Ranges (202) Backrefs (197) Abba (183) A man, a plan (165) 素数の逆転がうまくいかねー
125 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 18:48:08.56 ] >>117 これ解析して正規表現を生成するプログラムは書くことできる?
126 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 18:48:35.02 ] >>125 当たり前だろ
127 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 20:13:22.44 ] >>123 なるほど、fooとか入れてくのね。 ありがd。
128 名前:デフォルトの名無しさん mailto:sage [2013/12/27(金) 06:30:50.86 ] >>126 Prime(0) を生成するプログラムお願いします。
129 名前:デフォルトの名無しさん mailto:sage [2013/12/27(金) 08:52:28.55 ] Plain strings (207) foo
130 名前:デフォルトの名無しさん mailto:sage [2013/12/27(金) 18:44:21.67 ] >>124 ^(xx+?)\1+$ の逆だから素直に ^(?!(xx+)\1+$)
131 名前:デフォルトの名無しさん mailto:sage [2013/12/27(金) 23:49:58.74 ] すいません。VBScriptで 抽出した文字列にダブりがあります。 例: AAA BBB AAA CCC BBB CCC これを AAA BBB CCC のように抽出し直すにはどうすればいいでしょうか?
132 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 00:43:17.44 ] >>131 cat text.txt | sort | uniq
133 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 06:02:29.57 ] >>132 重複を削れといっているようだが、整列し直せとは言っていない。
134 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 09:24:51.01 ] >>133 Unixの勉強しましょうね
135 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 11:41:43.23 ] >>131 正規表現スレだぞ 根本的に勘違いしてる 死んで良いよ
136 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 12:25:00.00 ] >>134 ?
137 名前:デフォルトの名無しさん [2013/12/28(土) 12:31:59.03 ] >>133 cat text.txt | sort | uniq uniqの部分をしっかり見ろよ
138 名前:137 ようわからん mailto:sage [2013/12/28(土) 12:38:28.75 ] AAA AAA AAA AAA BBB BBB BBB BBB AAA CCC CCC CCC CCC BBB BBB CCC CCC CCC この方法だとuniqしたく無い場合に良い。
139 名前:デフォルトの名無しさん [2013/12/28(土) 12:43:27.01 ] 整列が要件に入っていないのに勝手に整列させるのはまずいって言いたいんじゃないの? するとsortが使えない、ゆえにuniqが使えないとなって破綻する。 UNIXのコマンドって微妙に使えないのが多くて、微妙に違うだけの同じ目的の コマンドが多くて困る。 解決案として要件の変更が必ず提示されるのも困る。 それでUNIXは廃れたんじゃないかな?
140 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 12:49:05.40 ] KISSの精神を体現したのがMac。
141 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 12:55:41.87 ] >>139 要件に入ってない範囲なら整列するもしないも自由なのが常識。
142 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 12:58:58.73 ] 有るものを押し付けるのがUNIX、お客様の要望するものを用意するのが Windows。
143 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 13:39:07.55 ] /imsxadlup の /d /l /u の使い方教えて。英語読めないの。 perldoc.jp/docs/perl/5.14.1/perlre.pod#47l
144 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 13:46:20.25 ] >>139 それは使いこなせてないんだろ。 Unixのコマンドは90%の解決を目指してる。その方が使いやすい。 自分の要件に合わせた、それにしか使えないコマンドが欲しいならプログラムすればいい。
145 名前:デフォルトの名無しさん [2013/12/28(土) 14:11:57.43 ] UNIXのコマンドは微妙に使えないのが使いやすい。 使わなくて済むからだ。 〜ジャーゴンニュースより抜粋〜
146 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 14:19:31.38 ] >>143 /d この修飾子は、パターンマッチングの際にプラットフォーム固有のロケール(ASCIIなど)を使用するように指示する。 ただし、Unicodeを使うべき理由がある場合はこの設定はそちらが優先される。 この修飾子が具体的にパターンマッチングにどのような変化をもたらすかを以下のサンプルで示した。 /l この修飾子は、パターンマッチングの際に現在のロケール設定を使用するように指示する。 このロケール設定はコンパイル時のロケールと同じであるとは限らず、 setlocale()を用いて任意のロケール設定を用いることができる。 /u この修飾子は、パターンマッチングの際にUnicodeのルールを使用するように指示する。
147 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 15:07:09.11 ] >>141 すでに抽出した行と同じ行は除外するというのが最も自然な アルゴリズムなので、それを期待している可能性が高いから 整列は避けるというのが一番自然。
148 名前:143 mailto:sage [2013/12/28(土) 15:17:11.45 ] >>146 おお、ありがとうございます。マジで助かりました。 おかげ様でperl 5.14.1の正規表現ルールを全部覚えられました、感謝〜。
149 名前:デフォルトの名無しさん [2013/12/28(土) 15:18:54.48 ] >>148 どういたしまして。
150 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 15:40:23.44 ] >>147 普通プログラムの問題だとsort()だけで重複が取れたりするから、 sortするのが当たり前だと思う。 ただ実務では300行に1行重複した行が紛れ込んでそれを削るという ケースがほとんどだから、絶対にsortを掛けたりしないもんだけど。
151 名前:デフォルトの名無しさん [2013/12/28(土) 18:44:49.26 ] Regular Expressionと関係ねえからよそでやれ
152 名前:デフォルトの名無しさん mailto:sage [2013/12/29(日) 01:12:47.99 ] そもそも要件に「VBScriptで」って入ってる段階でINIXコマンドは使えないって思うもんじゃね?
153 名前:デフォルトの名無しさん mailto:sage [2013/12/29(日) 04:51:41.49 ] >>152 そこはまぁCygwinとかMinGW+MSYSとかgnuwin32とかの各コマンド入れればいいって話になるんじゃね。 まぁどのみち正規表現じゃないからVBScriptの相談できる場所で聞けよて終わりなんだけど。
154 名前:デフォルトの名無しさん mailto:sage [2013/12/29(日) 09:03:40.37 ] >>152 「VBScriptで作ったデータの処理」であって「VBScript で処理しろ」とは書いてないけどな。 まあ、一回きりなら Excel でもいいかもしれないし、VBScript で完結させたいなら Dictionary 使うのが楽。
155 名前:デフォルトの名無しさん mailto:sage [2013/12/29(日) 09:15:59.40 ] ひとこと、 「正規表現ではできません」でいいのでは。
156 名前:デフォルトの名無しさん mailto:sage [2013/12/29(日) 13:27:09.27 ] perlならいろんなアクセスの仕方があって遊べる問題なんだけどなぁ。 VBSでやるとしたら正規表現の出番は ^.*$ くらいしか無いんじゃ・・これすら必要無いか・・
157 名前:デフォルトの名無しさん mailto:sage [2013/12/29(日) 13:34:16.38 ] 無理矢理正規表現でやるなら 1、最終行が1行目になるように順番を逆さまにする 2、s/^(.*)$(?=[\s\S]*^\1$)[\r\n]*//g; 3、1をする これで順番通りの結果になる。
158 名前:デフォルトの名無しさん [2014/01/03(金) 02:42:43.46 ] Twitterの自分のツイートをデータベースに入れていきたいんだが 公式から正規表現で解析できる?
159 名前:デフォルトの名無しさん mailto:sage [2014/01/03(金) 03:57:47.91 ] API叩けば?
160 名前:デフォルトの名無しさん [2014/01/03(金) 19:20:28.19 ] 英文の中から特定の単語を含むセンテンスを抽出する方法を教えてください 環境はPerlです
161 名前:デフォルトの名無しさん mailto:sage [2014/01/03(金) 20:03:17.54 ] >>160 センテンスごとに特定の単語を表す正規表現がマッチするか調べる。
162 名前:デフォルトの名無しさん mailto:sage [2014/01/03(金) 22:39:20.14 ] >>160 センテンスの前と後の改行を条件にする
163 名前:デフォルトの名無しさん mailto:sage [2014/01/04(土) 12:47:08.01 ] >>160 センテンスの開始と終了を正規表現で表し、「特定の単語」をその間に挟む
164 名前:デフォルトの名無しさん mailto:sage [2014/01/04(土) 13:10:19.31 ] >>160 $text = '英文'; $keyword = '特定の単語'; $regex = qr/(?:\G|[.?!;])\s*((?=[^.?!;]*\b$keyword\b)[^.?!;]+(?:[.?!;]|\z))/; while ($text =~ /$regex/g) { print "$1\n"; } () や "" などの中に文章が再帰的に書かれているようなものは考慮していない.
165 名前:デフォルトの名無しさん mailto:sage [2014/01/05(日) 13:52:40.26 ] 3.14
166 名前:デフォルトの名無しさん mailto:sage [2014/01/07(火) 08:56:16.73 ] 修正確認しました!ありがとうございました! Perl正規表現雑技 www.din.or.jp/~ohzaki/regex.htm#WithoutXYZ
167 名前:デフォルトの名無しさん mailto:sage [2014/01/07(火) 19:47:23.30 ] >>166 こういう計算方法って初めて見た。なんて名前の学問?なんだろう。
168 名前:デフォルトの名無しさん mailto:sage [2014/01/07(火) 21:12:17.73 ] こういうのか〜、大学で学べるんだねぇ。 ttp://www.ccn.yamanashi.ac.jp/~ysuzuki/automaton/automaton2012_08.pdf
169 名前:デフォルトの名無しさん mailto:sage [2014/01/07(火) 22:41:51.17 ] PowerShellスクリプトで仮想ドライブイメージのファイルパスを入力した後に、 パス文字列として正しいかどうかのチェックをしたくて次のようなコードを使ってみました。 Write-Host "マウントする仮想ディスクイメージのパスを入力" Write-Host "例: X:\VHD Images\example01.vhdx" $ImagePath = Read-Host "場所" $ImagePath = $ImagePath -Replace "`"","" Write-Host "入力したパス: "$ImagePath If($ImagePath -inotmatch "[a-z]`:`\[^/:*?`"<>|]+`.vhdx?") { 【TAB】 Write-Host "正しい形式のパスではありません。" } Else { 【TAB】 Write-Host "OK" } しかし、いくら正しいパスを入力しても「正しい形式のパスではありません。」が返されてしまいます。 コード中の正規表現部分はご覧のとおり [a-z]`:`\[^/:*?`"<>|]+`.vhdx? で、 一応ウェブ上の「PHP正規表現チェッカー」とJane用の「ReplaceStr Tool」では問題ありませんでした。 エスケープ文字が\ではなく`という点にも気を付けてチェックしました。 ここまでやってみましたが、問題点の洗い出しができすに困っています。 「OK」を返されるにはどうしたらいいのでしょうか? 尚、Test-Pathコマンドレットの利用はここでは扱わないものしてお願いします。
170 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 03:15:48.51 ] "[a-z]:\\[^/:*?`"<>|]+\.vhdx?"
171 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 04:27:05.50 ] >>170 あれ?エスケープ文字は`だってあっちこっちに書いてあるからその通りにしてたけど、それで動くんですね。 どうもありがとうございます。
172 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 16:38:03.89 ] 最後に $ 付けないと誤爆しそう。 "例: X:\VHD Images\example01.vhdx.damy" あと 「ReplaceStr Tool」 は対象テキストの改行が無視される仕様なので 改行を含むテキストにマッチさせたいときはご注意を。
173 名前:デフォルトの名無しさん mailto:sage [2014/01/09(木) 06:00:28.69 ] >>172 ありがとうございます。 自分用に使う分には誤爆の心配は一応無いのでいいのですが、きっちりやる時はそうですね。 おっしゃるとおり、ReplaceStr Toolは1行だけのテストにしか使えませんね。 まだ試してはないけど、ベクターにも何やらありますね。
174 名前:デフォルトの名無しさん [2014/01/11(土) 20:59:48.36 ] C言語のプログラムのソースから宣言されてる全変数を抜き出す正規表現を教えてください
175 名前:デフォルトの名無しさん mailto:sage [2014/01/11(土) 23:17:13.53 ] 正規表現じゃ無理
176 名前:デフォルトの名無しさん mailto:sage [2014/01/12(日) 00:02:13.49 ] >>174 変数宣言に関する言語の文法とあなたのコーディングルールを全て列挙できたら考えないこともない。 あとプリプロセッサとコメントは禁止で。 どぞっ。
177 名前:デフォルトの名無しさん mailto:sage [2014/01/12(日) 04:23:26.19 ] int foo, *bar, baz[8]; char *tai_pei64, honkon32[32]; とりあえずこれだけで考えると int、charで始まる行で、a〜z、A〜Z、0〜9、_、*を含む部分か? 関数を除外するには"("を含んだ行なら無視するか。
178 名前:デフォルトの名無しさん mailto:sage [2014/01/12(日) 20:29:15.96 ] 目的が分からんけど ctagsとか使ったほうが現実的なんじゃないの
179 名前:デフォルトの名無しさん mailto:sage [2014/01/13(月) 00:11:59.89 ] ideone.com/3wrY6i 俺にはムリだな
180 名前:デフォルトの名無しさん [2014/01/16(木) 13:18:43.71 ] age
181 名前:デフォルトの名無しさん [2014/01/16(木) 19:04:22.39 ] htmlファイルから、画像リンクの画像のディレクトリだけ取得する方法を教えてください
182 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 20:22:08.30 ] ターゲットのhtmlのソースを読む
183 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 22:02:42.42 ] >>181 >>2
184 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 22:12:38.67 ] >>181 basedir使えよ。環境知らんが。
185 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 23:37:49.09 ] 定期的にHTMLのパースに関して質問してくる奴が居るが同一人物か?
186 名前:デフォルトの名無しさん mailto:sage [2014/01/17(金) 05:59:24.78 ] ・文字列を含まない正規表現 (先読みはNG) ・再起を使った正規表現 (??{code})はNG これ作って面白い正規表現のベスト1、2なんだけど使える人が少なすぎる。 もっと普及させようよ。というかまず使えるようになってくれよ。
187 名前:デフォルトの名無しさん mailto:sage [2014/01/17(金) 09:27:36.46 ] 上は機械的にやるだけだし、作成するのあるのでそれ使えばいいが、なんか本末転倒な気持ちがする。 再*帰* は、すべての正規表現環境で使えないし。
188 名前:デフォルトの名無しさん mailto:sage [2014/01/17(金) 14:12:23.47 ] まぁ面白いと思う人がいれば..だね。ある種のゲームだと思うんだが。
189 名前:デフォルトの名無しさん mailto:sage [2014/01/17(金) 23:28:17.63 ] ●Regular Expressionの使用環境 ruby ●検索か置換か? 置換 ●説明 行中の改行を削除したい 以下でやると改行だけでなく改行の前の一文字も何故か消えてうまくいきません 対象データの場合は「元」が消えてしまいます ruby -e 'puts open("input.txt").read.gsub(/[^。¥n]¥n/,"")' > output.txt ●対象データ こんにちはお元 気ですか。 私は元気です。 ●希望する結果 こんにちはお元気ですか。 私は元気です。
190 名前:デフォルトの名無しさん [2014/01/18(土) 03:14:41.62 ] 何故か消えてじゃねえよ池沼かよ [^。\n]の意味考えてから投稿しろカス
191 名前:デフォルトの名無しさん mailto:sage [2014/01/18(土) 08:28:14.05 ] >>189 「行中の改行を削除したい」は矛盾した表現。 「文字列中の改行を削除したい」か「行末の改行を削除してひとつの文字列にしたい」 だと思う。
192 名前:デフォルトの名無しさん mailto:sage [2014/01/18(土) 09:04:51.25 ] 「句点の直後にない改行を削除」だろうな (?<!。)\n
193 名前:189 mailto:sage [2014/01/18(土) 10:19:24.32 ] [^。¥n]は句点のある改行以外の文字と一致することをようやく理解できました 勘違いしていました 192様のやり方でできました みなさまありがとうございました
194 名前:デフォルトの名無しさん [2014/01/18(土) 10:42:29.07 ] 理解できてねえな これはガチ池沼に見える
195 名前:デフォルトの名無しさん mailto:sage [2014/01/18(土) 11:17:22.59 ] どう考えても、素人に対して、回答もせず難癖つけてるアホの方がそう呼ばれると思うがな。
196 名前:デフォルトの名無しさん [2014/01/18(土) 11:25:24.11 ] 池沼がそう思って自己満足していればいいんじゃね 誰も困らないしね
197 名前:デフォルトの名無しさん [2014/01/18(土) 11:38:53.05 ] 難癖に見える次元じゃセンス0なのは明らかだから至急他のお仕事探した方がいいと思うよ 次からは↓でどうぞ 正規表現道場 Part2 kohada.2ch.net/test/read.cgi/php/1348048723/
198 名前:デフォルトの名無しさん mailto:sage [2014/01/18(土) 13:10:02.66 ] くやしいのう
199 名前:デフォルトの名無しさん [2014/01/18(土) 14:10:17.09 ] 煽れば教えて貰えると思うようじゃ死ぬまで無理だぞ(笑)
200 名前:デフォルトの名無しさん mailto:sage [2014/01/18(土) 15:52:02.57 ] またオライリーの本が理解出来るほど頭良くない人が暴れてるのか。
201 名前:デフォルトの名無しさん mailto:sage [2014/01/18(土) 16:56:55.68 ] >>195 難癖っつかツンデレだろ 190「[^。\n]がどういう意味を調べれがそうなった理由がわかるよ」 194「[^。\n]の意味を誤解している。もう一回ちゃんと理解してみよう」 実際[]の意味を適当な解説から丸写しするくらいしか説明する事ない。
202 名前:デフォルトの名無しさん mailto:sage [2014/01/18(土) 18:10:45.52 ] 俺はもうオートマトンの勉強始めたというのにおまえらは・・ 低レベルのダンジョンをいつまでもウロウロしてもしょうがなかろう。
203 名前:デフォルトの名無しさん mailto:sage [2014/01/18(土) 18:18:08.51 ] 俺の次のステージはこっち。じゃあなおまえら。 生真面目で賢いオートマトンたんに萌える toro.2ch.net/test/read.cgi/shar/1232872347/
204 名前:デフォルトの名無しさん [2014/01/18(土) 18:30:16.63 ] オートマトン厨か
205 名前:デフォルトの名無しさん mailto:sage [2014/01/18(土) 22:24:36.17 ] オートマトンを学ぶと↓この問題の答えを表す正規表現が作れるようになるぞ。 news.livedoor.com/article/detail/8239104/
206 名前:デフォルトの名無しさん mailto:sage [2014/01/18(土) 22:35:15.56 ] 見なくていいように、>>205 のタイトルはこれ 【クイズ】狼とヤギと野菜を川の向こうに無事に運ぶ方法を求めよ
207 名前:デフォルトの名無しさん mailto:sage [2014/01/19(日) 02:21:57.46 ] 今まで知らなかったってとこでお察し
208 名前:デフォルトの名無しさん mailto:sage [2014/01/19(日) 04:51:14.32 ] 俺が興味あるのは正規表現だけでそれ以外の技術にはまったく興味無いから。 perlの正規表現は誰も使わないようなメタ文字類まで使いこなせるがperlそのものはまるで知らない。
209 名前:デフォルトの名無しさん mailto:sage [2014/01/19(日) 05:02:05.90 ] >>208 なら机上でやってろよ。
210 名前:デフォルトの名無しさん mailto:sage [2014/01/19(日) 05:09:31.17 ] >>209 じゃあおまえが上で俺が下な。
211 名前:デフォルトの名無しさん [2014/01/19(日) 07:33:31.67 ] アッー
212 名前:デフォルトの名無しさん mailto:sage [2014/01/19(日) 11:10:20.35 ] 俺はもうポケモン卒業したというのにおまえらは・・
213 名前:デフォルトの名無しさん mailto:sage [2014/01/19(日) 13:47:41.62 ] >>208 厨学生はお気楽でいいな まあその餌では誰も釣れんが
214 名前:デフォルトの名無しさん mailto:sage [2014/01/20(月) 00:35:22.22 ] ・文字列を含まない正規表現 ・Ardenの規則 ネットには正しい解説が見当たらなかった2つ。どうやらこの辺がネット独学(笑)の限界らしい。 大学レベルの内容すら出てこないとはな、ネットのレベル低すぎる・・。
215 名前:デフォルトの名無しさん mailto:sage [2014/01/20(月) 00:36:44.71 ] まあ、ネット使ってる大学生はないから仕方ないよw
216 名前:デフォルトの名無しさん mailto:sage [2014/01/20(月) 00:51:42.18 ] んだね、さて、寝る。
217 名前:デフォルトの名無しさん mailto:sage [2014/01/20(月) 11:45:30.88 ] 海外のpdfが読めてないのがわかるなw ネットのレベルが低いだと? 井の中のカワズちゃんは、島国の中心で哀でも叫んでろ
218 名前:デフォルトの名無しさん mailto:sage [2014/01/20(月) 12:02:22.87 ] 最初に拾った棒切れで一晩子犬を叩いていたら 大人にうるさいと言われたでござるの巻
219 名前:デフォルトの名無しさん mailto:sage [2014/01/20(月) 18:22:31.69 ] >>217 英文で何か書いてるサイトがあることは随分前から知ってるよ。 ただ英文なんて読んでらんねーからノーカウント。そんなん読むくらいなら普通に本買うわ。
220 名前:デフォルトの名無しさん mailto:sage [2014/01/20(月) 18:27:36.05 ] インターネットのレベルの話からずれましたね
221 名前:デフォルトの名無しさん mailto:sage [2014/01/20(月) 18:32:10.45 ] 英文に関しては俺のレベルが低すぎるのを認めざるを得ない。あと数学も。 正規表現でぐぐると行列が出てくるサイトがあるんだがさっぱりだ。
222 名前:デフォルトの名無しさん mailto:sage [2014/01/20(月) 18:33:45.98 ] さて、気付いてもらえるか・・ toro.2ch.net/test/read.cgi/army/1384257046/
223 名前:デフォルトの名無しさん mailto:sage [2014/01/20(月) 19:05:48.98 ] 鳥肌レベルで気持ち悪いわ
224 名前:デフォルトの名無しさん mailto:sage [2014/01/20(月) 21:39:08.94 ] 偏差値40無かったしな、許せ。
225 名前:デフォルトの名無しさん mailto:sage [2014/01/21(火) 03:07:08.52 ] 正規表現メモの中の人の日記 www.kt.rim.or.jp/~kbk/zakkicho/index.html 日記更新した。どうやら気付いてもらえなかったようだ。
226 名前:デフォルトの名無しさん mailto:sage [2014/01/21(火) 04:03:29.00 ] うお、雑技の中の人ありがとう!地味に嬉しい。
227 名前:デフォルトの名無しさん mailto:sage [2014/01/21(火) 04:19:40.24 ] Perl正規表現雑技 - ある文字列を含まないものにマッチする正規表現 www.din.or.jp/~ohzaki/regex.htm#Without > (?:fooba|foob|foo|fo|f) これは f でまとめて書くかどうか悩んだだろうなぁw まとめないほうが分かりやすいのでこの書き方に賛成ですw
228 名前:デフォルトの名無しさん mailto:sage [2014/01/21(火) 04:22:06.48 ] ↑これの元ネタ↓ 正規表現道場 Part2 kohada.2ch.net/test/read.cgi/php/1348048723/
229 名前:デフォルトの名無しさん mailto:sage [2014/01/21(火) 05:02:16.61 ] XXXXXfoo → XXXXX. XXXXXfoo → XXXXXfo. うーん。。 この説明はちょっとというか、かなり分かりにくい。最後のピリオドがメタ文字に見えたし・・。 読む人の中でこの説明を理解出来る人はほとんどいないと思う。
230 名前:デフォルトの名無しさん mailto:sage [2014/01/21(火) 15:33:02.18 ] 否定は、正規表現でやりたくない内容ランキングのトップクラスだよな。
231 名前:デフォルトの名無しさん mailto:sage [2014/01/21(火) 19:06:33.85 ] "xyz" みたいに文字が被らない否定ならまだいいけど、"xyx" みたいに文字が被る場合の否定は 即答出来る人はほぼいないんじゃないかな。頭の体操としては面白いんだけどね。
232 名前:デフォルトの名無しさん mailto:sage [2014/01/21(火) 22:25:26.02 ] 雑技の中の人、わがまま聞いてくれてありがとう〜m(_ _)m
233 名前:デフォルトの名無しさん mailto:sage [2014/01/22(水) 03:26:52.31 ] >>231 の答え ^(?:[^x]|x+y*[^xy])*(?:x+y*)?$
234 名前:デフォルトの名無しさん [2014/01/22(水) 22:42:26.46 ] HTMLからタグや不要な部分を取り除いたら、 空白だけの行とか、虫食い状態になってしまったんですが、 どのようにすればいいでしょうか? 自分は、pythonですが、pattern = r"^\s*\t*(\r)?\n$" としてまずは空白行を取り除こうとしました しかし、失敗しました アドバイスいただけたらと思います
235 名前:デフォルトの名無しさん mailto:sage [2014/01/22(水) 22:47:01.47 ] >>234 \n にマッチさせるなら $ を使う必要はないのでは。 $ は \n の直前にマッチする。 つまり $\n が本来の書き方。
236 名前:デフォルトの名無しさん [2014/01/22(水) 22:50:17.11 ] 俺なら[\s\n]+\nを\nに置き換える
237 名前:デフォルトの名無しさん mailto:sage [2014/01/22(水) 22:54:54.34 ] >>234 \s*\t* は \s* と同じ意味。\s はタブにもマッチする。 >>236 それだとファイル先頭の行が空行だったら消せないね。
238 名前:デフォルトの名無しさん [2014/01/22(水) 23:37:30.99 ] 皆さん、アドバイスありがとうございました アドバイスを参考に、^[\s*(\r)?\n]+(\r)?\nとかを\nに変えてみました しかし、やはりダメでした 検索しても、いい情報が出てきませんでした 思っていたより難しいですね...
239 名前:デフォルトの名無しさん mailto:sage [2014/01/23(木) 00:56:46.11 ] 将棋のルール覚えるみたいに初めはちょっと大変だよ。 まずは a を b に置換出来るかどうかから始めたほうがいい。
240 名前:デフォルトの名無しさん [2014/01/23(木) 09:57:52.30 ] toro.2ch.net/test/read.cgi/tech/1388634728/204
241 名前:デフォルトの名無しさん mailto:sage [2014/01/23(木) 13:22:58.47 ] あれ?wwwwww偽スレ削除されてたなw ざまぁwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww 誘導に対して荒らしだのNGだのほざいてたゴミ乙wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww ああいう奴らが社会の底辺で足引っ張ってるんだろwwwwwwwwwwwwwww どうせプライドのかけらもない恥知らずだからこのスレになに食わぬ顔で書いてるんだろうなwwwwww 本当に思考回路歪んでるし生きてる価値がないんだから氏ねばいいのにwwwwwwwwwwwwwwwwww 偽スレの正統性を主張してたみたいに現実社会でも意味不明な狂った主張をしてるんだろwwwwwwwwwしかも自覚なしwwwwwwwwwwwwwww 迷惑だから早く芯でねwwwwwwwwwwwwwwwwwwwwwwww
242 名前:デフォルトの名無しさん [2014/01/23(木) 14:11:58.39 ] ゴミゴミゴミゴミゴミゴミゴミゴミゴミゴミゴミゴミゴミゴミゴミゴミゴミゴミゴミゴミゴミwwwwwwww
243 名前:デフォルトの名無しさん mailto:sage [2014/01/23(木) 14:57:09.39 ] ぶっちゃけ、あんなハッタリに引っ掛かって大人しくなるほどアホだとは思わなかった。 どんだけピュアハートなんだよ。
244 名前:デフォルトの名無しさん mailto:sage [2014/01/23(木) 17:56:37.00 ] 草生やす程楽しいか? 削除されることは最初から分かってただろうに。 削除されるべくして削除されただけ。
245 名前:デフォルトの名無しさん [2014/01/23(木) 20:49:54.40 ] ゴミ
246 名前:デフォルトの名無しさん mailto:sage [2014/01/23(木) 23:24:17.63 ] まぁここはキチガイ隔離スレだから我々はあちらで粛々とスキル向上に励みましょう。 このスレは糞質問の雨嵐を受ける傘スレ。
247 名前:デフォルトの名無しさん mailto:sage [2014/01/24(金) 00:17:56.24 ] >>246 我々ってキチガイのお前一人だけだよ。
248 名前:デフォルトの名無しさん mailto:sage [2014/01/24(金) 01:01:07.27 ] ワロタw 知らないままでいなさいな。
249 名前:デフォルトの名無しさん mailto:sage [2014/01/24(金) 01:12:33.81 ] >>247 分かってないな わざわざこっちに来てまで荒らすってことは あっちを荒らしてくれってことだよ
250 名前:デフォルトの名無しさん mailto:sage [2014/01/26(日) 03:11:54.27 ] 初心者に分かりやすいのは単純な分岐。 (a\*|b\*|c\*|a|b|c) *付きのものを前に書かないといけません。(順番大事)
251 名前:デフォルトの名無しさん mailto:sage [2014/01/26(日) 13:48:39.54 ] >>250 むこうのスレの90です。 勉強になります。ありがとうございます。 おそらく私の質問に関するレスだと判断しましたので レスをさせていただきました。
252 名前:デフォルトの名無しさん mailto:sage [2014/01/26(日) 14:43:40.93 ] いえいえ、次からはこちらで質問したほうが回答もらいやすいです。では。
253 名前:デフォルトの名無しさん mailto:sage [2014/01/26(日) 20:18:56.54 ] DirectCast(12UI, UInt32Value) から 12UI を取り出す正規表現を教えてけろ。\( \)を使おうとしたのだが、 文字列の中にもともと入っている()があるのでうまく行かん。
254 名前:デフォルトの名無しさん mailto:sage [2014/01/26(日) 21:20:59.04 ] >>253 どういう正規表現だとどういうのがうまく行かないのか書け
255 名前:デフォルトの名無しさん mailto:sage [2014/01/26(日) 21:26:52.82 ] >>253 エスケープしろ、またはするな。 どちらかは環境による。
256 名前:デフォルトの名無しさん [2014/01/27(月) 14:36:23.65 ] DirectCast\((12UI), UInt32Value\)
257 名前:デフォルトの名無しさん mailto:sage [2014/01/27(月) 15:02:22.99 ] みなさんありがとうございます。 >>256 教えていただいた方法で出来たのですが、 例に挙げた12UIだけではなく、以下のように数字が一般の整数の場合、 DirectCast\(([0-9].UI), UInt32Value\) のようにしてみたのですが、マッチしません。 DirectCast(14805UI, UInt32Value), _ DirectCast(8010UI, UInt32Value) _ DirectCast(1UI, UInt32Value), _ DirectCast(152511UI, UInt32Value) どうしたらよいでしょうか? 環境はサクラエディタの置換コマンドです。
258 名前:デフォルトの名無しさん mailto:sage [2014/01/27(月) 15:27:17.46 ] >>257 .の意味を調べればよい。
259 名前:デフォルトの名無しさん mailto:sage [2014/01/27(月) 15:34:39.28 ] >>258 できました。数年ぶりに正規表現使ったので間違えていました。 ありがとうございました。
260 名前:デフォルトの名無しさん mailto:sage [2014/01/27(月) 16:44:44.21 ] ヒントを与えると後は自力で頑張る良い質問者
261 名前:デフォルトの名無しさん [2014/01/27(月) 20:51:42.26 ] 正規表現のテクニックをマスターできるチュートリアルって無い? 手を動かすだけでできるようなやつ
262 名前:デフォルトの名無しさん mailto:sage [2014/01/28(火) 03:17:05.07 ] 手を動かすだけ 正規表現 でググると出てくるサイトがあるが、数回動かして終わりで意味なし。
263 名前:デフォルトの名無しさん mailto:sage [2014/01/28(火) 05:01:27.39 ] ●Regular Expressionの使用環境 Javascript ●検索か置換か? 置換 ●説明 '1'を含まないABCからDEFまでを削除したいです ●対象データ ABC 1 DEF ABC 2 DEF ABC 3 DEF ●希望する結果 ABC 1 DEF
264 名前:デフォルトの名無しさん mailto:sage [2014/01/28(火) 05:05:40.49 ] s/Javascript/Dart/g
265 名前:デフォルトの名無しさん mailto:sage [2014/01/28(火) 10:10:43.60 ] >>263 「'1'を含まないABCからDEF」というと対象データでは2パターン考えられる. A) 2の前後,と,3の前後 B) 2の前のABCから3の後のDEFまで おそらくAだとして, str = str.replace(/ABC[^1]*?DEF/g, '');
266 名前:デフォルトの名無しさん mailto:sage [2014/01/28(火) 12:01:12.29 ] 「123」 を含まない場合 → ABC(?:(?!123|DEF).)*DEF 否定の中にもDEFを書くのがミソ。
267 名前:デフォルトの名無しさん mailto:sage [2014/01/28(火) 12:39:43.06 ] >>266 最短一致を使えば否定の中にDEFを書く必要はなくなる. ABC(?:(?!123).)*?DEF
268 名前:デフォルトの名無しさん mailto:sage [2014/01/28(火) 16:46:19.88 ] この2つの違いが分からんかな、まぁめんどくさいからいいや。
269 名前:デフォルトの名無しさん mailto:sage [2014/01/28(火) 17:25:51.83 ] 右も左も分からん人は>>266 推奨。予期せぬトラブルを未然に防げる。
270 名前:デフォルトの名無しさん mailto:sage [2014/01/28(火) 22:03:43.46 ] 予期せぬトラブルを説明してください
271 名前:デフォルトの名無しさん mailto:sage [2014/01/29(水) 03:20:24.59 ] 266はDEFを通り越す可能性が無いけど267は通り越す可能性を残す、と言えば分かるかな。 正規表現単体で使う分にはまったく問題ないが正規表現の一部として正規表現の中に 放り込むと問題が生じる可能性が出てくる。ある程度正規表現に慣れた人なら無意識に回避 出来るだろうが初心者の場合それが出来ないからね。
272 名前:デフォルトの名無しさん mailto:sage [2014/01/29(水) 03:24:16.13 ] ちなみに266だと後ろを見ないマッチにしても問題ない。 分岐があると遅くなるがこれを最小限にする方法もある(詳説 正規表現参照) 上級者にもおすすめしたい書き方なのだ。
273 名前:デフォルトの名無しさん mailto:sage [2014/01/29(水) 03:58:32.19 ] さて、向こうに帰ろう。
274 名前:デフォルトの名無しさん mailto:sage [2014/02/01(土) 16:47:50.64 ] ●Regular Expressionの使用環境 PHP ●検索か置換か? 検索 ● 文字コードを取得したい。 例) text/html;charset=ISO-8859-1 > ISO-8859-1 text/html;charset=utf-8 > utf-8 preg_match('/text\/html;charset=(.+?)/i' , $str); これだと先頭の1文字しか取れません。 自分なりに頑張ってここまでしたのでアドバイスください。
275 名前:デフォルトの名無しさん [2014/02/01(土) 16:52:12.73 ] $
276 名前:デフォルトの名無しさん mailto:sage [2014/02/01(土) 16:58:34.76 ] あ、なるほど行末をしめす$なわけか。 即答どうもです、助かりました。
277 名前:デフォルトの名無しさん mailto:sage [2014/02/01(土) 17:43:47.02 ] 最短マッチをやめろ
278 名前:デフォルトの名無しさん mailto:sage [2014/02/01(土) 20:50:26.76 ] ([^>]+)
279 名前:デフォルトの名無しさん mailto:sage [2014/02/02(日) 19:25:37.08 ] カンマ付きの数値と、カンマ無しの数値の両方に対応する正規表現がほすぃ
280 名前:デフォルトの名無しさん mailto:sage [2014/02/02(日) 19:31:36.16 ] いらね
281 名前:デフォルトの名無しさん mailto:sage [2014/02/02(日) 19:35:26.39 ] やっぱいいや
282 名前:デフォルトの名無しさん mailto:sage [2014/02/10(月) 17:23:05.15 ] >>42 すんごい亀だけど、-が真ん中にあるからエラーになったんじゃないの?
283 名前:デフォルトの名無しさん mailto:sage [2014/02/10(月) 18:52:12.86 ] いくらなんでも亀すぎだろw
284 名前:デフォルトの名無しさん mailto:sage [2014/02/10(月) 23:38:57.90 ] ●Regular Expressionの使用環境 Notepad++.exe 6.53(Scintillaライブラリ,正規表現は複数行に対応してます) ●検索か置換か? 置換 ●説明 Movable Type形式にエクスポートしたブログのコメントだけを削除したいです。 "COMMENT:"で始めって"-----"で終わるのを""で置換したい ●対象データ AUTHOR: foo ----- BODY: あ ----- COMMENT: AUTHOR: bar か ----- -------- AUTHOR: foo ----- BODY: さ ----- --------
285 名前:デフォルトの名無しさん mailto:sage [2014/02/10(月) 23:39:29.02 ] ●希望する結果 AUTHOR: foo ----- BODY: あ ----- -------- AUTHOR: foo ----- BODY: さ ----- -------- 単純にCOMMENT:.*-----で検索すると最初の"COMMENT:"から"ファイル末尾の"--------"の最後の"-----"部分までが選択されてしまいます。 "COMMENT:"から最初に現れる"-----"までがヒットするようにしたいです。
286 名前:デフォルトの名無しさん mailto:sage [2014/02/10(月) 23:45:59.68 ] >>283 すっごい久しぶりにスレひらいたから、ごめんね><
287 名前:デフォルトの名無しさん mailto:sage [2014/02/10(月) 23:47:17.98 ] >>285 対応してるかどうかしらないけど、 .* → .*? にするといいよ
288 名前:デフォルトの名無しさん mailto:sage [2014/02/11(火) 00:00:34.65 ] >>287 ありがとー できた
289 名前:デフォルトの名無しさん mailto:sage [2014/02/15(土) 00:47:50.42 ] 文字コードはutf-8やShift-JISのように英数字があり、一個だけ"-"が含まれていますが、 コレを正規表現で文字コードかどうかのvalidateを行うにはどのようにしたらいいですか? [a-zA-Z0-9-]+では、-----とかも通ってしまいます
290 名前:デフォルトの名無しさん [2014/02/15(土) 02:03:36.42 ] 何言ってるかよく分からないけどこれでいい? [a-zA-Z0-9]*-[a-zA-Z0-9]* ※真ん中のハイフンのエスケープは環境に合わせて
291 名前:デフォルトの名無しさん mailto:sage [2014/02/15(土) 02:05:31.57 ] 文字で出来たコードと文字を表現するコードは意味が全く違うぞ[a-zA-Z0-9]+-[a-zA-Z0-9]+
292 名前:デフォルトの名無しさん mailto:sage [2014/02/15(土) 08:18:47.09 ] エスパーが結婚しとるw
293 名前:デフォルトの名無しさん mailto:sage [2014/02/15(土) 08:35:56.02 ] チルドレンは俺の嫁
294 名前:デフォルトの名無しさん mailto:sage [2014/02/15(土) 10:22:10.36 ] もじーず (きごー もじーず)* _の扱いに悩むな
295 名前:デフォルトの名無しさん mailto:sage [2014/02/15(土) 11:50:20.25 ] >>289 文字コードの名前は「英数字があり、一個だけ"-"が含まれています」ってのがそもそも間違い. www.iana.org/assignments/character-sets/character-sets.xhtml また,正式には「Shift_JIS」だが,モジュールによっては「SJIS」とか「Shift-JIS」とかも受け付けたりするので,それらも認めるかどうかは前提次第. 正確にvalidateしたいんなら文字コードの名前をひたすら列挙していくしかない. 列挙せずに規則性(条件)を探して正規表現にするのは面白いかもしれない. 例えば, ・「-」や「_」では終わらない ・「:」の後ろには数字が2桁か4桁続いて終わる とか.
296 名前:デフォルトの名無しさん mailto:sage [2014/02/15(土) 13:27:17.08 ] 面白くねー
297 名前:デフォルトの名無しさん mailto:sage [2014/02/15(土) 15:34:21.63 ] 単純に [a-zA-Z0-9]+(-|_|:)?[a-zA-Z0-9]+して、 例えばlen(str) <= 30 くらいにしとけばセキュリティ的にも大丈夫なんじゃないの? あ、正規表現の部分が全然ダメか
298 名前:デフォルトの名無しさん mailto:sage [2014/02/19(水) 19:13:00.30 ] input="aa(?<id>でーた)aaa" →idグループを置換→ "aa置換aaa" 名前付きグループを置換する正規表現はどう書けばおk? グループ内にカッコが存在するパターンも考えると俺の頭じゃ思いつかなかった。
299 名前:デフォルトの名無しさん [2014/02/19(水) 20:31:04.07 ] な、なんだって? ごめん、ちょっとよく聞こえなかった。 環境も聞き取れなかった。
300 名前:デフォルトの名無しさん mailto:sage [2014/02/19(水) 21:16:56.09 ] $ echo 'input="aa(?<id>でーた)aaa"'|sed 's/(?<id>でーた)/痴漢/' input="aa痴漢aaa"
301 名前:298 mailto:sage [2014/02/19(水) 21:50:47.96 ] 対象:aa(?<id>でー()た )aa パターン:\(\?<id>.*?\) 結果:aa置換た )aa 対象:(aa(?<id>でーた )aa) パターン:\(\?<id>.*\) 結果:(aa置換 最短、最長使ってみたがダメだった。 不確定の正規表現のパターンを正規表現で置換は無理ゲーなのか。
302 名前:デフォルトの名無しさん mailto:sage [2014/02/19(水) 21:51:04.83 ] 正規表現の一部を正規表現でマッチさせて置換したいってことなんかな。 素の正規表現だと有限回数の入れ子しか書けないからムリだろう。 鬼車なら、 ^(?<文字集合>\[\^?(?:[^\\\[\]]|\\.)*\]) ^(?<基本表現>(?:[^\\()\[\]]|\g<文字集合>|\\.)*) これを ^(?<基本表現>(?:[^\\()\[\]]|\[\^?(?:[^\\\[\]]|\\.)*\]|\\.)*) こうして ^(?<正規表現>\(\g<正規表現>*\)|\g<基本表現>)* これを ^(?<正規表現>\(\g<正規表現>*\)|(?:[^\\()\[\]]|\[\^?(?:[^\\\[\]]|\\.)*\]|\\.)*)* こうして \(\?<id>(?<正規表現>\(\g<正規表現>*\)|(?:[^\\()\[\]]|\[\^?(?:[^\\\[\]]|\\.)*\]|\\.)*)*\) こうするとか。 基本表現のところがだいぶ適当だから場合によっては怪しい動きをするかも。 部分式呼び出しの使い方間違えててちょっと焦った。
303 名前:デフォルトの名無しさん mailto:sage [2014/02/20(木) 01:26:17.90 ] 「正規表現 再帰」 でぐぐれ。と言えば済む話。
304 名前:デフォルトの名無しさん [2014/02/21(金) 06:53:06.58 ] フォームにurlを入力させる場合に不正かどうかを調べたいんですけど、 以下の正規表現で大丈夫でしょうか? urlは星の数だけあるので全てに適用できるか分かりません pattern = "/\b(?:(?:https?|ftp):\/\/|www\.)[-a-zA-Z0-9+&@#\/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#\/%=_|]/i"; 何かアドバイスあれば教えて欲しいのですが
305 名前:デフォルトの名無しさん mailto:sage [2014/02/21(金) 11:05:16.67 ] >>304 >>1-4 を100回音読してから出なおせ
306 名前:デフォルトの名無しさん mailto:sape [2014/02/21(金) 13:43:02.94 ] RFCだか何だか見れば済む話のような
307 名前:デフォルトの名無しさん mailto:sage [2014/02/21(金) 15:29:38.12 ] 厳密なメールアドレスチェックとか正直やりたくないのう
308 名前:デフォルトの名無しさん mailto:sage [2014/02/21(金) 15:44:18.60 ] >>298 厳密でないドコモとかのメールアドレス通らなくて文句言われるしな。
309 名前:デフォルトの名無しさん mailto:sage [2014/02/21(金) 16:07:54.34 ] Internationalized Domain Nameでググれば絶望的な気分になれるぞ。
310 名前:デフォルトの名無しさん [2014/02/21(金) 17:18:22.06 ] >>304 星の数ほどあっても1億か10億くらいのURLを一つ一つ試してみて、そのうちの99%以上パスすればOKとかにすればいいんじゃね? 99%未満ならパスしなかったURLを元に調整する感じで。 99%とかって具体的な値は自分で決めなきゃいけないけどな。
311 名前:デフォルトの名無しさん mailto:sage [2014/02/21(金) 22:06:55.70 ] >>310 でFAだろ 10億もいらんな、1億で十分
312 名前:デフォルトの名無しさん mailto:sage [2014/02/21(金) 22:15:48.49 ] まずスキームで3つしか挙げていないという。http,https,ftp
313 名前:デフォルトの名無しさん [2014/02/21(金) 22:25:56.27 ] 言いたいことは分かるけど ネットやっててその3つしか見たことがない
314 名前:デフォルトの名無しさん mailto:sage [2014/02/21(金) 22:35:51.22 ] >>304 http://お名前.com/ が不正と判断されてしまう。
315 名前:デフォルトの名無しさん [2014/02/21(金) 22:37:23.24 ] お名前.comもそういえば見たことないな 使ってる人いんの?
316 名前:デフォルトの名無しさん mailto:sage [2014/02/21(金) 22:41:08.51 ] ja.wikipedia.org/wiki/ ウィキペディア これもURLだな。
317 名前:デフォルトの名無しさん mailto:sage [2014/02/21(金) 22:46:37.53 ] >>313 mailto: file: tel: gopher: javascript:
318 名前:デフォルトの名無しさん [2014/02/21(金) 22:48:43.96 ] gopherって何? ゴップハー?
319 名前:デフォルトの名無しさん mailto:sage [2014/02/21(金) 22:53:18.37 ] gopherか、20年前ぐらいに使ったことあるかも。
320 名前:デフォルトの名無しさん mailto:sage [2014/02/21(金) 23:08:56.91 ] >>313 たぶん言いたいことを理解できていないと思うから、 RFC1738を100回音読してからまた来るといいよ
321 名前:デフォルトの名無しさん mailto:sage [2014/02/21(金) 23:10:41.50 ] >>318 ゴーファー。 ブラウザのプロキシの設定で見かけることがある。
322 名前:デフォルトの名無しさん mailto:sage [2014/02/21(金) 23:12:02.04 ] 音読したけど、英語だったので意味がわからなかったとか
323 名前:デフォルトの名無しさん mailto:sage [2014/02/22(土) 00:42:49.93 ] ゴーフルならおととい食ったが
324 名前:デフォルトの名無しさん mailto:sage [2014/02/23(日) 18:20:44.10 ] 1時間以上試しているけど、わからないので助けてくれ! ● PHP ● 検索(抽出) ● 「abc--'--'-"-"--」 から→ 「--------」を取り出す abc以降の -------- を取り出したい。 ただし '" は不要というパターン '/.*abc(.+[^"|\']*)/' /.*abc([^"|\']*)/ これでいけそうでいけないんだよねー
325 名前:デフォルトの名無しさん mailto:sage [2014/02/23(日) 18:33:27.55 ] echo str_replace( "-","", "[abc--'--'-\"-\"--」"); 単純にこうじゃいかんの?
326 名前:デフォルトの名無しさん mailto:sage [2014/02/23(日) 18:36:15.46 ] ああごめん寝ぼけてた、忘れてくれw
327 名前:デフォルトの名無しさん mailto:sage [2014/02/23(日) 19:17:59.08 ] 正規表現じゃなくて単なる文字列操作でいいんじゃないのか? 先頭のabcを捨てて、残った文字列からクォート文字を消すという2手順でいいだろ
328 名前:デフォルトの名無しさん mailto:sage [2014/02/23(日) 19:21:51.03 ] つーか正規表現じゃムリじゃね? クォート文字の位置が固定ならばできるが、そういう要件じゃなさそうだし
329 名前:デフォルトの名無しさん mailto:sage [2014/02/23(日) 22:18:09.84 ] s/[^-]//g
330 名前:デフォルトの名無しさん mailto:sage [2014/02/23(日) 23:01:48.43 ] たぶんハイフンはプレースホルダーの意味で書いたのではないか どうなんだ>>324
331 名前:デフォルトの名無しさん mailto:sage [2014/02/23(日) 23:27:46.75 ] v[^-^]v
332 名前:デフォルトの名無しさん mailto:sage [2014/02/24(月) 01:37:54.80 ] >>329 は、取り出したいものを正規表現するのではなく、取り除きたいものを正規表現して置換するという意味で書いた。
333 名前:デフォルトの名無しさん mailto:sage [2014/02/25(火) 02:38:54.15 ] >>324 それは「--」と「--」と「-」と「-」と「--」を抽出してから結合してる 正規表現でやるなら(結合を含むから)最低でも置換になる 「'"」の除去をしてから 「--------」を取り出すか 「--'--'-"-"--」を取り出してから「'"」の除去をすれば 抽出と置換の二段階になるけど多分楽に事が済む
334 名前:デフォルトの名無しさん mailto:sage [2014/02/25(火) 17:37:02.74 ] >>333 もしかしてプログラム経験無い?テキストエディタの正規表現とは別世界だぞ。
335 名前:デフォルトの名無しさん mailto:sage [2014/02/25(火) 17:47:27.85 ] >>334 どんだけショボいエディタ使ってんだよw
336 名前:デフォルトの名無しさん mailto:sage [2014/02/25(火) 20:27:28.66 ] /(?<=abc)(.+)/で一度ふるいにかけて/['"]/でsplitなり/['"]/自体除去すりゃいいんじゃね 2段階に分けるほうが楽
337 名前:デフォルトの名無しさん mailto:sage [2014/02/25(火) 23:33:19.95 ] この質問の回答に一度も\Gが出てこないのが寂しい。
338 名前:デフォルトの名無しさん mailto:sage [2014/02/26(水) 00:33:57.11 ] >>334 飛び飛びの領域を単一のマッチ範囲や捕獲式集合として捕獲できる正規表現なんてあるの? Perlのコードサブパターンとかで拡張すれば出来るかもしれないけど、 普通は複数のマッチ範囲や複数の捕獲式集合として得るしか無いと思うんだが それと、まともなエディタならPerlとかの特殊極まりない拡張を除けば大体の機能が使えるだろ >>334 >>337 正規表現でプリーズ
339 名前:324 mailto:sage [2014/02/26(水) 22:44:02.26 ] 返事が遅くなりましたが、色々アドバイスありがとうございました。 可能ならば正規表現で処理したかったのですが、 皆さんのアドバイス通り置換での2段階処理とします。 これの方が楽で確実みたいですしね。 ども、でした。
340 名前:デフォルトの名無しさん mailto:sage [2014/02/27(木) 00:53:58.53 ] 正規表現は機能でなくて表現。
341 名前:デフォルトの名無しさん mailto:sage [2014/02/27(木) 06:30:21.40 ] 機能だろ 黙ってろクズ
342 名前:デフォルトの名無しさん mailto:sage [2014/02/27(木) 07:20:11.35 ] >>340 LispのS式でも勉強してみよう (S式 Symbolic expression) 一応書いておくけど 表現=expression
343 名前:デフォルトの名無しさん mailto:sage [2014/02/27(木) 08:20:03.61 ] >>342 elispで使ってるくらいであんま詳しくないけど、sexpは構造でそれが機能かどうかはcar次第では。 正規表現は検索や置換の対象となる文字集合を表すものですしょ。別に名前に表現が入ってるからとか気にしてなかった。
344 名前:デフォルトの名無しさん mailto:sage [2014/02/27(木) 15:19:32.41 ] 元々は論文などの学術的な用途で説明に使う純粋な表現だった それを元に正規表現による検索ルーチンが作られて普及した 今ではその検索ルーチンを正規表現エンジンと呼ぶようになってしまい、 正規表現エンジンが受け入れる検索パターンを正規表現と呼ぶようになってしまった なお、正規表現エンジンは元々の正規表現の意味では通常表現不可能なパターンすら検索する能力を持っている もはや別物
345 名前:デフォルトの名無しさん mailto:sage [2014/02/27(木) 18:29:51.90 ] そう言えば折れも英単語解析のための正規表現みたいなものを作って使っていたなあ ま、その後いわゆる正規表現に折れも一本化したけどな
346 名前:デフォルトの名無しさん mailto:sage [2014/02/27(木) 23:06:44.69 ] 海外じゃもうregexと書くのが定着してる、というか定着させようとしてるね。
347 名前:デフォルトの名無しさん mailto:sage [2014/02/27(木) 23:16:15.70 ] >>346 じゃあs式も略すならpは余計だよね。
348 名前:デフォルトの名無しさん mailto:sage [2014/02/28(金) 00:48:01.57 ] S-exだね。
349 名前:デフォルトの名無しさん mailto:sage [2014/02/28(金) 05:41:22.87 ] >>348 じゃあ大文字とハイフンが必要ならReg-exだねって(オイ
350 名前:デフォルトの名無しさん mailto:sage [2014/03/01(土) 21:33:30.54 ] >>346 さりげなくregexpをdisらないで
351 名前:デフォルトの名無しさん mailto:sage [2014/03/05(水) 12:56:57.66 ] ●Regular Expressionの使用環境 サクラエディタ ●検索か置換か? 置換 ●説明 Exampleの文字列を含まない行を削除したい ●対象データ ABCA Test BCAA Example CABA Abc ●希望する結果 BCAA Example ネットで検索して出てきた^(?!.*Example).+$や^((?!Example).)*$ で試したんですが空行が残ってしまいました
352 名前:デフォルトの名無しさん mailto:sage [2014/03/05(水) 13:09:37.21 ] ^(?!.*Example).+\r?\n?
353 名前:デフォルトの名無しさん mailto:sage [2014/03/05(水) 13:15:01.87 ] >>352 できました ありがとうございました!
354 名前:デフォルトの名無しさん mailto:sage [2014/03/05(水) 20:10:58.23 ] $は改行の直前までしかマッチしないのがポイント
355 名前:デフォルトの名無しさん mailto:sage [2014/03/06(木) 14:13:12.95 ] 後から出てきてさも知ったかのような口を利くのは>>354 の(チャーム)ポイント
356 名前:デフォルトの名無しさん mailto:sage [2014/03/07(金) 04:25:15.64 ] 誰も正規表現にツッコミ入れないけどみんなあえてスルーしてるんだろうな。
357 名前:デフォルトの名無しさん mailto:sage [2014/03/07(金) 06:11:48.79 ] 希望する結果が逆なのは分かったけど、 ツッコミが必要な正規表現が分からない…出来れば教えてくれ。
358 名前:デフォルトの名無しさん mailto:sage [2014/03/07(金) 07:11:37.81 ] >Exampleの文字列を含まない行 空行もこれに該当するんじゃ?
359 名前:デフォルトの名無しさん mailto:sage [2014/03/07(金) 10:43:45.86 ] サクラエディタとしては、該当するものを""で置換して消すしかないからこーなるわけよ。
360 名前:デフォルトの名無しさん mailto:sage [2014/03/07(金) 10:53:01.11 ] 後方参照の否定だっけ 否定の後方参照だっけ 後方参照をうまく使えると捗りそうだよね いまいちパッと使えないorz
361 名前:デフォルトの名無しさん mailto:sage [2014/03/07(金) 11:46:51.76 ] >>356 お前恥ずかしい奴だな
362 名前:デフォルトの名無しさん mailto:sage [2014/03/07(金) 22:35:03.25 ] 空行が消せないという仕様かスキルか知らないけどそれのほうが恥ずかしいのでは。
363 名前:デフォルトの名無しさん mailto:sage [2014/03/07(金) 22:44:29.69 ] 今試してみたら普通に空行消せた。ということは・・(察し
364 名前:デフォルトの名無しさん mailto:sage [2014/03/07(金) 23:49:29.37 ] 相当悔しかったんだな
365 名前:デフォルトの名無しさん mailto:sage [2014/03/07(金) 23:51:20.94 ] >>362-363 クスクス
366 名前:デフォルトの名無しさん mailto:sage [2014/03/08(土) 00:41:37.59 ] あれ?>>352 で改行が消せるなら空行も消せるはずですね。
367 名前:デフォルトの名無しさん mailto:sage [2014/03/08(土) 14:35:23.35 ] >>359 何言ってんだこの馬鹿は。
368 名前:デフォルトの名無しさん mailto:sage [2014/03/08(土) 22:07:40.54 ] >>366 まだそんな間抜けな事を言っているの? 君だけだよ?
369 名前:デフォルトの名無しさん mailto:sage [2014/03/09(日) 01:07:09.32 ] 耳の聞こえないふりの人みたいに逆ギレですかそうですか。
370 名前:デフォルトの名無しさん mailto:sage [2014/03/09(日) 17:54:46.52 ] 掲示板なんだから耳が聴こえないかどうかは関係ないだろ 何言ってんだ
371 名前:デフォルトの名無しさん mailto:sage [2014/03/09(日) 17:56:38.66 ] 俺はチンポ立たない振りして女連れ込んでる 入れちゃうとだいたいオーケー
372 名前:デフォルトの名無しさん mailto:sage [2014/03/09(日) 18:57:29.74 ] >>370 「みたいに」って書いてあるじゃん この「耳の聞こえないふりの人」ってのは多分自称ベートーベンの痛い奴の事だよ ゴーストライターに耳聞こえてることバラされて訴えるって意気込んでるらしいから ゴーストライター以前にマスコミの取材中にも聞こえてる挙動してて今更なんだが 障害者手帳の不正入手の罪がバレるのはゴーストライターがバレるより怖いらしい
373 名前:デフォルトの名無しさん mailto:sage [2014/03/09(日) 22:09:42.25 ] こちらにも貼っておきますね 現在プログラム板のID制導入の投票を実施中です よろしくお願いします プログラム板 強制ID制導入に関する投票スレ kohada.2ch.net/test/read.cgi/vote/1394290844/
374 名前:デフォルトの名無しさん mailto:sage [2014/03/10(月) 00:48:00.39 ] ID表示されるようになったらスレタイ変えたメンヘラ男子が困りそう。
375 名前:デフォルトの名無しさん mailto:sage [2014/03/11(火) 17:40:04.71 ] >>371 これまじ?
376 名前:デフォルトの名無しさん mailto:sage [2014/03/11(火) 18:57:52.90 ] >>375 もちろんマジ
377 名前:デフォルトの名無しさん mailto:sage [2014/03/11(火) 19:00:37.92 ] うわぁー、たった!どうして? きみを、みてたら、心があつくなって 体があつくなって ,,,,,,よしこさん! とだきつく あとは、まずオッパイもみもみ 下にてをのばし あとは自分で判断しろ
378 名前:デフォルトの名無しさん mailto:sage [2014/03/12(水) 17:16:31.95 ID:6zBbVI2I] ●Regular Expressionの使用環境 秀丸 ●検索か置換か? 置換 ●説明 複数行の空行を1つの空行にしたい ●対象データ ●希望する結果
379 名前:378 mailto:sage [2014/03/12(水) 17:19:09.32 ID:6zBbVI2I] 検索 ^\n+ 置換 \n これだと置換されない。
380 名前:デフォルトの名無しさん mailto:sage [2014/03/12(水) 17:26:30.29 ID:iuIDUWkr] >>379 その環境は知らないけど、^があるのに$がなくて\nって変じゃないか。 単に\n+じゃダメなの。
381 名前:デフォルトの名無しさん mailto:sage [2014/03/12(水) 17:38:06.82 ID:Qvoh4cG3] 秀丸の改行へのマッチには制約があるよ。ググるか説明書読んで。
382 名前:デフォルトの名無しさん mailto:sage [2014/03/12(水) 20:35:10.49 ID:9jZOtDPU] スルーされにくい質問のテンプレと例 ●Regular Expressionの使用環境 2chMate 0.8.6/NEC/LaVieTab PC-TE510N1B/4.2.2/SR ●検索か置換か? 検索?(NGワード) ●説明 アットwikiを正規表現で当たるようにしたい 要するに www1 から200までの数字.atwiki.jp/何とかかんとか/ を引っ掛けたい ●対象データ 特になし ●希望する結果 (例)www33.atwiki.jp/atwikibeginner/ がNGワード指定される
383 名前:デフォルトの名無しさん mailto:sage [2014/03/12(水) 20:44:53.82 ID:iuIDUWkr] >>382 www\d+\.atwiki\.jp/.*/
384 名前:デフォルトの名無しさん mailto:sage [2014/03/12(水) 21:14:52.82 ID:9jZOtDPU] >>383 すいません。できませんでした。 htmlタグでもう一度作れますか? できなければ諦めます
385 名前:デフォルトの名無しさん mailto:sage [2014/03/13(木) 00:04:20.91 ID:xoYJgDxQ] >>384 htmlタグって? 正規表現にチェック入れてないだろ。
386 名前:デフォルトの名無しさん mailto:sage [2014/03/13(木) 06:58:56.57 ID:1OBNO3pg] /.*/ じゃダメ。誤爆する。
387 名前:386 mailto:sage [2014/03/13(木) 07:15:45.44 ID:1OBNO3pg] ttp\:\/\/www\d+\.atwiki\.jp\/[\!\#-\&\(-\.0-\;\=\?-\[\]-\~]+\/ これでいいのかな?2chMateとやらの正規表現エンジンの仕様が 分からないから怪しい文字全部にエスケープ付けといた。 あと調べたところ古いバージョンでは正規表現の先頭に / を付ける必要があるらしい。 動かない場合は試してみて。
388 名前:デフォルトの名無しさん mailto:sage [2014/03/13(木) 07:29:23.49 ID:2a19jPZt] >>385 チェック入れてますよ >>387 ありがとうございます。できました。
389 名前:デフォルトの名無しさん mailto:sage [2014/03/13(木) 08:26:35.42 ID:xoYJgDxQ] >>388 2chMate 0.8.6/SHARP/SH-13C/2.3.4/DR では問題なかった
390 名前:デフォルトの名無しさん mailto:sage [2014/03/13(木) 08:30:17.94 ID:2a19jPZt] >>389 387なら出来ましたよ
391 名前:デフォルトの名無しさん mailto:sage [2014/03/13(木) 08:30:41.83 ID:xoYJgDxQ] >>386 NGなんだから、厳密にする必要もない。面倒だから適当にしただけ。
392 名前:デフォルトの名無しさん mailto:sage [2014/03/13(木) 08:35:07.76 ID:xoYJgDxQ] >>390 基本的なとこは包括されてるから、コピペミスってるか、ttpか、多分丸投げだからJavaの正規表現の解釈が変わったか。 アプリ開発してたけど、そういう話は知らないなぁ。
393 名前:378 mailto:sage [2014/03/13(木) 08:41:19.60 ID:2EBFZUmq] >>380 \n+だけだと空行以外の文字列の最後にもヒットしてしまいます。 >>381 すみませんヘルプに書いていました。 ありがとうございます。 (?#maxlines:50)^\n+ で置換することができました。
394 名前:381,386 ◆QzqhRqBYxktP mailto:sage [2014/03/13(木) 09:50:43.55 ID:1OBNO3pg] >>392 おそらくh抜き。datには<aタグが入らない板もあるからね。 /.*/ のとこは無くてもいいくらいだね、ハッキング事件のセキュ対応なんだろうし。 >>388 >>393 ^−^b
395 名前:デフォルトの名無しさん mailto:sage [2014/03/14(金) 09:55:55.35 ID:zoiay4j6] ●Regular Expressionの使用環境 JavaScript ●検索か置換か? 置換 ●説明 同じ文字の4回以上の繰り返しを3回にしたい ●対象データ ああああああああああああああああああいいいいいいいいいいいいいいいうえおおおおおおおおおおおおおお ●希望する結果 あああいいいうえおおお
396 名前:デフォルトの名無しさん mailto:sage [2014/03/14(金) 10:00:26.17 ID:Mhqkzd/y] 検索 (.)\1{3,*} 置換 $1$1$1
397 名前:395 mailto:sage [2014/03/14(金) 11:12:05.63 ID:zoiay4j6] >>396 (.)\1{3,*}だとなぜか上手くいかなかったけど(.)\1{3,}でできました ありがとうございました
398 名前:デフォルトの名無しさん mailto:sage [2014/03/14(金) 16:48:20.08 ID:Mhqkzd/y] あ、{3,*} は別の環境(proxomitron)の書式だった。ごめんね。
399 名前:デフォルトの名無しさん [2014/03/14(金) 23:51:23.33 ID:YZlgvtQG] 正規表現の文字コード順について質問したいのですが 1行内に沢山文字があって、それを正規表現で検索ヒットさせるんですけど 正規表現は重いから、なるべく、あらかじめ文字コード順に直しておいたほうが良いという事を聞きました 数が膨大になっていけば、バカにならないので、一度全文文字コード順にソートしてみて、正規表現の検索の時間が どれくらい軽くなるのか試してみようと思うのですが そこで、文字コードにはShiftJIS等あるそうで、それらによって文字の並び方が違う、らしいのですが どれが良いのか全く分かりません、それに正規表現にも種類があるのでしょうか 稚拙な質問ですみません、何か質問自体に大きな間違いがあれば、それについても御指摘ください
400 名前:デフォルトの名無しさん mailto:sage [2014/03/14(金) 23:58:33.54 ID:jnh1VUPi] > なるべく、あらかじめ文字コード順に直しておいたほうが良いという事を聞きました どこで? 文字コード順にソートできる事例なんて ほぼないだろ?
401 名前:デフォルトの名無しさん mailto:sage [2014/03/15(土) 00:18:44.37 ID:Q3mCogqK] ヒット率でならわかるけど文字コード順てイミフ
402 名前:デフォルトの名無しさん mailto:sage [2014/03/15(土) 00:32:00.47 ID:CF1cuZUb] >>399 もしかして特定の一文字を数えるのに正規表現を使おうとしてる? そりゃあ正規表現は重すぎるだろうし一文字ずつソートしたほうが速いだろうね。 何がしたいの?
403 名前:デフォルトの名無しさん mailto:sage [2014/03/15(土) 15:22:34.65 ID:YATV051M] >>399 例文もなしに文字コード順とか言われてもイミフ しかも文字コードの知識すらなさそうだけど、 \xnnnnや\unnnn(nは文字コード値)とかの の文字コード直接指定の正規表現を使わない限りは 文字コードを意識する必要なんてほぼないよ
404 名前:デフォルトの名無しさん mailto:sage [2014/03/15(土) 15:30:32.85 ID:tYn4Fm5x] エスパーの俺が解説してあげよう。 配列の中からある値をサーチするときは 配列を文字コード順でソートしていれば速いんだよ。 ところでだな。正規表現は 文字をサーチするために使うんだよ
405 名前:デフォルトの名無しさん mailto:sage [2014/03/15(土) 17:18:45.26 ID:hD2AtX1A] 傘スレが役に立ってる
406 名前:デフォルトの名無しさん [2014/03/15(土) 18:18:58.17 ID:uGEDgr8/] >>400-405 自分でも何言ってるのかさっぱり分かりません それなのに質問してごめんなさい > \xnnnnや\unnnn(nは文字コード値)とかの > の文字コード直接指定の正規表現を使わない限りは > 文字コードを意識する必要なんてほぼないよ 極単純な正規表現しか知らないものですから、一から勉強します ありがとうございました
407 名前:デフォルトの名無しさん mailto:sage [2014/03/16(日) 09:19:28.06 ID:xU+OWlTt] >正規表現は重いから、なるべく、あらかじめ文字コード順に直しておいたほうが良い こう言ってた人に真意を聞くのが筋でしょう。 たぶんこれを言った人も違う意味で言ったんだと思いますが。
408 名前:デフォルトの名無しさん mailto:sage [2014/03/16(日) 18:15:16.01 ID:TS+hDRL9] >>403 いや[亜-熙]みたいな範囲指定する場合はモロに影響する ちゃんとキャラクタクラスなどを使えば問題はないのだが、 今度は使えるクラスが文字コードによって異なるっていう…
409 名前:デフォルトの名無しさん mailto:sage [2014/03/26(水) 22:18:12.16 ID:vsO28NG4] てすてす
410 名前:デフォルトの名無しさん mailto:sage [2014/03/27(木) 06:17:49.40 ID:iCbpA3l5] >>4 板移転↓ 正規表現道場 Part2 nozomi.2ch.net/test/read.cgi/php/1348048723/l50
411 名前:デフォルトの名無しさん mailto:sage [2014/03/29(土) 00:31:17.46 ID:2x5p0G/E] >>410 うん、わかった。覚えてたらな。
412 名前:デフォルトの名無しさん mailto:sage [2014/04/12(土) 13:28:47.34 ID:4XenY3RD] @abc にはマッチしないで @abcabc や @abcdef にはマッチさせるにはどのように記述したら良いでしょうか?
413 名前:デフォルトの名無しさん mailto:sage [2014/04/12(土) 13:50:15.31 ID:U3ze+O2N] >>412 >>2 のように記述したらいいと思うよ。 @abc(abc|def)
414 名前:デフォルトの名無しさん mailto:sage [2014/04/12(土) 14:11:47.17 ID:4XenY3RD] >>413 レスありがとうございます 後出し条件になってしまい大変申し訳ないですが @abc の後に続く文字列は[0-9a-zA-Z]が連続したものです 例えば @abcaaa @abcjoioho @abcvvvud にはマッチして @abc のみにはマッチしないように記述したいです 申し訳ありませんがもう一度ご教示頂きたいです。よろしくお願いします
415 名前:デフォルトの名無しさん mailto:sage [2014/04/12(土) 14:14:15.07 ID:4XenY3RD] 更に追記させて下さい @defghij @jijoaa @hogehoge などの文字列にもマッチさせたいです 何度も投稿してしまい本当に申し訳ありません
416 名前:デフォルトの名無しさん mailto:sage [2014/04/12(土) 15:19:18.59 ID:s4x1CSLN] >>414 > @abc の後に続く文字列は[0-9a-zA-Z]が連続したものです そのまま書けばええやん @abc[0-9a-zA-Z]+ >>415 何をしたいのかよくわからんけど、@[0-9a-zA-Z] として、アプリ側で @abc を弾いた方がいいんじゃね?
417 名前:デフォルトの名無しさん mailto:sage [2014/04/12(土) 15:21:49.29 ID:s4x1CSLN] >>416 typo したわ × @[0-9a-zA-Z] として ○ @[0-9a-zA-Z]+ として
418 名前:デフォルトの名無しさん mailto:sage [2014/04/12(土) 20:05:08.80 ID:ngoF8pDl] .NET2.0 System.Text.RegularExpressions.Regex; 検索です。 <p><a href="example.com"></p> <a href="example.com"> このようなデータから、pタグに囲まれているexample.comのみを抜き出したいのですが、 一旦pタグごと抜き出してあとからreplaceするしかないのでしょうか?
419 名前:デフォルトの名無しさん mailto:sage [2014/04/12(土) 20:41:47.82 ID:rlCwOjmw] >>414 >>415 @(?!abc)[0-9a-zA-Z]+
420 名前:デフォルトの名無しさん mailto:sage [2014/04/12(土) 23:00:03.30 ID:U3ze+O2N] >>418 xpathで一発。 と思ったが、a閉じてないし無理か。 その初めて見るデータの仕様がわからないと、どうしようもない。
421 名前:デフォルトの名無しさん mailto:sage [2014/04/12(土) 23:50:11.34 ID:jMhZwQAt] >>419 これだと @abcabc @abcdef にはマッチしないか
422 名前:デフォルトの名無しさん mailto:sage [2014/04/12(土) 23:50:28.43 ID:75P4fa7h] こっちに書いたらscにも反映されちゃうのか、こっちをちらしの裏にしようと思ったのに。
423 名前:デフォルトの名無しさん mailto:sage [2014/04/13(日) 00:33:19.28 ID:yqZVS2ZT] test
424 名前:デフォルトの名無しさん mailto:sage [2014/04/13(日) 07:57:10.90 ID:Dl/ggmgg] 一番内側のインライン要素は別に閉じる必要ないんじゃないっけ
425 名前:デフォルトの名無しさん mailto:sage [2014/04/13(日) 11:58:54.95 ID:wSq/pgWA] >>424 html はそこら辺アバウトだったから xhtml では xml に合わせたから、解析しやすくなるはずなんだが、アバウトなままのサイトが一杯あるから苦労は変わらないままだったりする
426 名前:デフォルトの名無しさん mailto:sage [2014/04/13(日) 16:31:19.64 ID:9NN4C2hO] >>426 省略可能な奴はちゃんと定義されててアバウトじゃないんだけど、 流通してるHTMLとWebブラウザの実装がアバウトってだけだよ。 最近話題になったやつだと2ch。scの告知画面tinyurl。com/pjstnp7 はbodyタグのオープンとか省略しているけどW3Cの検証機を通る。 # エンコーディング周りはHTTPヘッダで回答してればセーフだし。 どこでこの話聞いたんだっけ・・・
427 名前:デフォルトの名無しさん mailto:sage [2014/04/13(日) 16:44:43.25 ID:CQggOOXO] スラドで見かけた
428 名前:デフォルトの名無しさん mailto:sage [2014/04/14(月) 06:01:26.20 ID:x8/AYQxN] あー、やっぱスラドか。一応ググったつもりだったんだがなぁ… it.slashdot.jp/comments.pl?sid=627849&cid=2574373 そしてスラドのこんな記事の話題をこんなスレで振って返事があるとかびっくりだ。さんきゅ
429 名前:デフォルトの名無しさん mailto:sage [2014/04/14(月) 07:43:22.83 ID:HpK6ptq4] どうみても ./ と 2ch は住民かぶってるだろ
430 名前:デフォルトの名無しさん mailto:sage [2014/04/14(月) 08:06:33.60 ID:DuPxyPL7] ドッスラはカレントディレクトリなんだよなあ
431 名前:デフォルトの名無しさん mailto:sage [2014/04/14(月) 09:13:38.05 ID:HpK6ptq4] /. の pyto やね
432 名前:デフォルトの名無しさん mailto:sage [2014/04/14(月) 22:47:36.55 ID:qpVJ3EkT] なんでそう何度も前後逆になるんだ? Intel厨?(little endian)
433 名前:デフォルトの名無しさん mailto:sage [2014/04/15(火) 13:46:45.24 ID:WaetxQT9] 前後で考えるから逆だと思うわけで 高低で考えると逆じゃない
434 名前:デフォルトの名無しさん mailto:sage [2014/04/19(土) 15:08:30.61 ID:I0Tv5INM] ひまわりの肥料って何がいいですか?
435 名前:デフォルトの名無しさん mailto:sage [2014/04/21(月) 10:46:09.60 ID:epNqpaJy] ●Regular Expressionの使用環境 サクラエディタ 2.1.1.1 ●検索か置換か? 置換 ●説明 []内の文字だけにしたい ※ [ と ] と (半角スペース)の3つを消したい ●対象データ [あいうえお] ←最後に半角スペースあり(以下同じ) [カキクケコ] [AIUEO] [漢字等々] ●希望する結果 あいうえお←最後の半角スペースも消したい(以下同じ) カキクケコ AIUEO 漢字等々
436 名前:デフォルトの名無しさん mailto:sage [2014/04/21(月) 12:03:19.19 ID:3tZdYhCV] >>435 置換対象 [(.*) ] 置換後 $1
437 名前:デフォルトの名無しさん mailto:sage [2014/04/21(月) 12:10:07.08 ID:3tZdYhCV] すまんエスケープしないとダメだな あとスペースの位置まちがってた 『』の中 置換対象 『\[(.*)\] 』 置換後 『$1』
438 名前:デフォルトの名無しさん mailto:sage [2014/04/21(月) 12:44:34.05 ID:EHF6HnLR] sakuraテキストエディタを使用しています。 20行くらいの文字列があります。 それぞれの行の、前後にabcとefgを追加したいです。 abc元の文字列efg 検索文字 (^*$) 置換え文字 abc\1efg これを実行すると、元の文字列abcefgと各行に追加されます。 どのように正規表現を書けばいいか教えてください。
439 名前:デフォルトの名無しさん mailto:sage [2014/04/21(月) 13:12:33.14 ID:7sVNkmyi] 検索文字 ^(.+)$ 置換 abc\1efg
440 名前:デフォルトの名無しさん mailto:sage [2014/04/21(月) 13:38:17.94 ID:3tZdYhCV] サクラには始点挿入と終点追加の機能もあるんやで
441 名前:デフォルトの名無しさん mailto:sage [2014/04/21(月) 14:49:46.24 ID:EHF6HnLR] >>439 できました!! ありがとうございます。 >>440 そんな機能もあったんですね、調べてみます。
442 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 17:52:09.55 ID:V1UpyXxT] 挿入! ヤラシイ
443 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 20:18:46.86 ID:JH0TWYKX] 秀丸エディタの正規表現 「改行を含む0文字以上の任意の文字列」 を指定するにはどうしたら良いでしょうか? .+ だと改行が含まれません。 対処法を教えて下さい・・・・
444 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 20:42:22.63 ID:GDJFN5mS] \r\n
445 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 20:48:34.44 ID:JH0TWYKX] >>444 すいません上手く行きません。 [\.\n]+ [\s\S]+ これでもダメです。
446 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 21:06:21.53 ID:JH0TWYKX] 訂正。 [.\n]+ これでもダメ。 [\S\s\n]+ これだとマッチしたりしなかったり。 挙動がよく分かりません。
447 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 21:48:48.71 ID:BpGWRq7/] ヘルプの 目次− 検索系コマンド− 正規表現− \nを使った複数行検索の際の制限について 秀丸で改行を含む正規表現はうまくいかないのであきらめよう
448 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 21:57:52.26 ID:JH0TWYKX] 秀丸エディタスレに移動します。お邪魔しました。
449 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 21:59:23.54 ID:JH0TWYKX] >>447 アドバイスありがとうございました。
450 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 15:24:01.32 ID:FDgGm5F+] Win7に入れたcygwinで、以下のようなテキストファイル いろんな文字Text11いろんな文字 いろんな文字Text215いろんな文字 いろんな文字Text351いろんな文字 ... から Text11 Text215 Text351 を取り出したいのです。 をgrepやsedでトライしたのですが、分りません。 よろしく。
451 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 15:48:21.91 ID:bHDNIx6I] >>450 てきとーだけど sed 's/^.*\(Text[0-9]*\).*$/\1/'
452 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 16:09:16.64 ID:FDgGm5F+] >>451 ありがとうございます。出来ました。
453 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 17:58:23.86 ID:7YL+swb1] grep -o Text[0-9]* の方が楽でない
454 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 18:56:42.33 ID:FDgGm5F+] >>453 ありがとうございます。こんな技があったとは。。。素晴らしい。
455 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 23:18:57.81 ID:VGAf199r] せいきなんとかakiba.geocities.jp/hp20140401/
456 名前:デフォルトの名無しさん mailto:sage [2014/05/07(水) 18:40:40.37 ID:a4cm40Cx] ●Regular Expressionの使用環境 Emeditor(正規表現エンジン:Perl) ●検索か置換か? 検索 ●説明 各行の1番目のAまでを検索したい ●対象データ 評価良い 評価悪い 評価ふつう ●希望する結果 ”評価良い”の ”評価” と ”評価悪い”の ”評価” はヒットさせず、 ”評価ふつう”の ”評価” のみヒットさせたいです。
457 名前:デフォルトの名無しさん mailto:sage [2014/05/07(水) 18:41:19.38 ID:a4cm40Cx] >>456 の続きです 下の検索ワードで個々に正規表現検索すると、 評価(?!良い) 評価(?!悪い) 評価(?!良い) で検索すると、 評価悪い 評価ふつう 上の行の”評価”がヒットし、 評価(?!悪い) で検索すると、 評価良い 評価ふつう 上の行の”評価”がヒットします。 評価(?!良い)|評価(?!悪い) で検索すると、 評価ふつうの”評価”のみヒットさせていたのですが、 評価良い 評価悪い 評価ふつう 上の3行全ての”評価”がヒットしてしまいます。 評価ふつうの”評価”のみヒットさせるにはどのようにすれば良いでしょうか。 お分かりの方おりましたら、アドバイス頂けるとうれしいです。よろしくお願いします。
458 名前:デフォルトの名無しさん mailto:sage [2014/05/07(水) 21:20:41.89 ID:bY3JnOhr] >>457 評価(?!良い|悪い) 評価(?!良い)(?!悪い)
459 名前:デフォルトの名無しさん mailto:sage [2014/05/07(水) 22:51:13.63 ID:N+3a4ufs] Perlって(?=)使えないの? それにしても説明文章ヘタクソだな
460 名前:デフォルトの名無しさん mailto:sage [2014/05/07(水) 23:10:01.42 ID:QGVowAzN] >Emeditor(正規表現エンジン:Perl) とか言ってる時点で・・・ Emeditorの正規表現はBoost Regex++や
461 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 00:29:38.20 ID:ZNqlRNij] >>458 さん ありがとうございます。試させて頂いたところマッチしました。 そのような書き方になるのですね、とても参考になりました。 文章長くなってスミマセン。 "EmEditor は、Perl の正規表現構文に基づいています"と記載があったので今までPerlだと思ってました。。 確認しましたらBoost Regex++でした。。
462 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 04:50:15.85 ID:XccdVftY] 否定先読みが使えて肯定先読みが使えない、なんて環境は有り得ないだろ 評価(?=ふつう) でええやん
463 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 02:21:54.85 ID:8U9D7Dh6] >>459 ,462 すいません遅くなりました。そのような書き方もあったのですね。 試してみたところ正常に動作しました。とても参考になります、どうもありがとうございます。
464 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 10:51:15.57 ID:OuDEqY/x] ●Regular Expressionの使用環境 Textmate ●検索か置換か? 置換 ●説明 行末尾から最初に現れるスペースまでを検索し、置換によって該当文字を削除したい ●対象データ A B C A B CA A CAB A ABC ●希望する結果(各行の末尾にスペースは存在しない) A B C B CA CAB ABC よろしくお願いします
465 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 15:29:19.68 ID:bpNAt6b2] TextMate Manual ≫ 正規表現 manual.macromates.com/ja/regular_expressions 正規表現のルールはこちらです、よろしくお願いします。
466 名前:デフォルトの名無しさん [2014/05/10(土) 16:22:48.29 ID:bpNAt6b2] >>455 バッチリでした!ありがとうございました!
467 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 19:08:45.30 ID:9WYsc5/z] >>464 置換前先頭には半角スペースあり 置換前: [^ ]+?$ 置換後: 空欄
468 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 06:17:56.60 ID:cMjkQ9rh] ●Regular Expressionの使用環境 sed、grep ●検索か置換か? 置換 ●説明 マッチした結果をそのまま置き換えるでなく、 1つ前に改行を入れたい。 ●対象データ 0ABC1DEF2GHI3JKL4MNO ●希望する結果 0ABC 1DEF 2GHI 3JKL 4MNO よろしくお願いします。
469 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 06:49:33.52 ID:gqNJJWlw] >>468 マッチ条件を書けよ どうせ任意の4文字、じゃないんだろ?
470 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 07:34:32.90 ID:AcT6QrMV] 想像するに、先頭が連番となる数字で始まるじゃないか? 単なる数字で始まるならまだしもだけど
471 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 07:47:35.54 ID:5Cvu+VTD] >>468 sedはわかるけど、grepコマンドで置換ってどういうこと?
472 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 10:34:42.59 ID:1lidwdFw] <検索> (検索キーワード) <置換> $1\n みたいな意味でないかな。ようは置換後に改行を入れるやり方が知りたいと。
473 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 22:45:24.09 ID:/w7Xo6bZ] C++である変数valでコメントにされていない箇所を検索したい マッチしてほしい val=0; // 〜〜〜〜 マッチしてほしくない // val=1; // val=1;
474 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 22:56:17.34 ID:zdamCAAu] >>473 Visual Studio とかで検索した方がいいんじゃないか?
475 名前:デフォルトの名無しさん [2014/05/12(月) 00:30:36.67 ID:7jCCFS46] C++である変数valでコメントにされていない箇所を検索したい マッチしてほしい val=0; // 〜〜〜〜 マッチしてほしくない // val=1; // val=1;
476 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 03:34:07.70 ID:gfHEQtpm] >>475 IDEを使って、変数の参照機能を利用すると良い。
477 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 11:30:42.85 ID:ZtmTFQ/l] こういう需要があるのは知ってるがスレチだろう 昔Cで書いたときは使い物にならなくて条件コンパイルの入れ子まで対応したw
478 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 12:43:12.46 ID:3gM4pAJ7] 俺も背面跳び逆さダブルコンパイルまで対応した。時間軸が合わないからここには貼れないけどね。
479 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 17:50:14.54 ID:wdXrAHxM] >>468 ふたつ疑問。 一つは既に出ているように検索条件。数字一文字でよいのか? 二つ目は文字列の先頭に現れる数字に対しては改行を挿入しないという解釈でよいのか。
480 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 21:04:37.03 ID:gfHEQtpm] >>475 みたいなのは正規表現でやるもんじゃないよね。 意味を知らないと正確にマッチできないのだから 意味を解釈できるツール、たいていはIDEになると思うけど そういうのを使わなきゃ。
481 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 15:31:48.19 ID:KOwQUUXj] 荒らすための質問はスルー
482 名前:デフォルトの名無しさん mailto:sage [2014/05/14(水) 03:00:27.44 ID:JxeTIG1R] スルーの強要は荒らし
483 名前:デフォルトの名無しさん mailto:sage [2014/05/14(水) 04:59:25.29 ID:zBp780AK] 次スレ 正規表現道場 Part2 akiba.geocities.jp/hp20140401/goto_sc.html
484 名前:デフォルトの名無しさん mailto:sage [2014/05/15(木) 00:55:52.66 ID:0gQNXHoC] >>483 面白そう。DANより早いコード作ろうか。
485 名前:デフォルトの名無しさん mailto:sage [2014/05/15(木) 02:56:08.49 ID:3O8Jckao] ミスって.scでレスしちまった・・・ >>483 わざわざブラウザでしか見れないジャンプページ挟んで広告費稼ぐとか下衆くて不便な誘導はヤメレ ttp://nozomi.2ch. sc/test/read.cgi/php/1348048723/ でいいだろ
486 名前:デフォルトの名無しさん mailto:sage [2014/05/15(木) 03:17:29.59 ID:0gQNXHoC] 女 「アフィなんてないよ!」 あれはジオが出してる広告。ソース見れば分かるよ。 そもそもこんな過疎スレでアフィなんてやっても年100円いくかどうかでは。
487 名前:デフォルトの名無しさん mailto:sage [2014/05/15(木) 04:10:09.30 ID:3O8Jckao] >>486 そうだったか、すまん。でもページランク稼ぎじみてて不便なのは変わらん。
488 名前:デフォルトの名無しさん mailto:sage [2014/05/16(金) 01:07:46.28 ID:/OuuLVDF] ブラウザでないというと何で見てるの? クリックで辿り着けるほうが半角スペ消して繋げるより便利でね? 広告がうざかったらadblockとかで。jsで出さなくも出来るけどまんどくせ。 >ページランク それが狙いならそこら中にURL貼るわな。まぁそんなに警戒しないでくれよんぴる。
489 名前:デフォルトの名無しさん mailto:sage [2014/05/16(金) 07:30:43.48 ID:z+fBbvw1] 今の時点でscへ行く人まずいないんじゃあるまいか? なぜにscへ誘導?
490 名前:デフォルトの名無しさん mailto:sage [2014/05/16(金) 08:02:21.58 ID:/OuuLVDF] 小飼 弾が手負いのうちに容赦なくツッコミを入れておく : せいきなんとか akiba.geocities.jp/hp20140401/2014/006.html ↑誰かツイッターで弾に特攻して。 >>489 sc 、 open2ch のNGワード。 ← 中国並みの言論統制 連投規制なし。 ← ちらしの裏に最適 実のとこそれほど誘導するつもりはない。むしろ人が増えるとちらしの裏にしにくくて困る。 ただ正規表現にガチな人が何人かいるとありがたかったり。間違いを教えてもらえるからね。
491 名前:デフォルトの名無しさん mailto:sage [2014/05/17(土) 09:47:21.78 ID:7hm1D3vf] >>488 > ブラウザでないというと何で見てるの? Webブラウザと書くべきだったな。すまん。 > クリックで辿り着けるほうが半角スペ消して繋げるより便利でね? それとドメイン名に半角スペースは使えないからJaneStyleとかだとスペース付きのままでも飛べるし、 半角スペース入れずにピリオドを句読点に変換しておいても国際化ドメインに対応してれば飛べる。 そもそも専ブラで読む気なら半角スペース消してすら、Webブラウザの応答待ってコピペするより速い。 > まぁそんなに警戒しないでくれよんぴる。 ゴメン無理。だってSEO意識しまくってるじゃんか。事ある毎に宣伝してるしそういう風にしか見えないよ。 >> nozomi.2ch 。sc/test/read.cgi/php/1348048723/169 >> ググりやすさ重視の名前にしました。「正規表現」の書きにくさを回避。 >> 検索でも他サイトと被りそうにないし。
492 名前:デフォルトの名無しさん mailto:sage [2014/05/17(土) 14:40:00.41 ID:+edCn2/r] >>491 おk、専ブラで見てるってことか。 範囲選択 → 右クリ → 「選択範囲をURLとして開く」 ・・DANE。 なるほど、半角スペ消さなくても飛べるね。 しかし普通のブラウザで見に来てる人にはそうはいかんのだよ。そういう人用のリンクなわけだが・・。 >SEO ああ、それは他のサイトと被らない名前にすることで検索結果の一番上に出そうって話だよ。 1つしかヒットしない名前にすれば一番上になるだろって話。どうやら失敗したっぽいけどね・・orz クルマメーカーが 「車」 で検索されたときの順位を一位にするべく行うSEO対策とは違う。 まぁそんなに警戒する人は無理に来なくてもいいよ、異常に怖がって足がすくんで先に進めないような人より 広告だろうがSEO対策に利用されようが気にすることなく貪欲に情報を求めにくる人に来て欲しい。
493 名前:デフォルトの名無しさん mailto:sage [2014/05/17(土) 21:36:10.71 ID:+edCn2/r] ちなみに >>3 の正規表現パズルもジオだから同じ広告が出るのを確認出来る。 って、今年の3/1に更新されてるね。まだ現役だったのかw
494 名前:デフォルトの名無しさん mailto:sage [2014/05/18(日) 23:11:17.27 ID:vFp/InUl] 1時間調べたけどギブアップ。 秀丸で 連続しない改行は★に置換。 連続する改行は何もしない。 どう記述すれば良いでしょうか! 検索文字列 → \n([^\n]) 置換文字列 → ★\1 これだと連続する改行の末尾でマッチしてしまうのでNGです。
495 名前:デフォルトの名無しさん mailto:sage [2014/05/19(月) 00:38:57.93 ID:6okFS6t5] (?<!\n)\n(?!\n) でダメなら知らね。
496 名前:デフォルトの名無しさん mailto:sage [2014/05/19(月) 17:45:35.18 ID:ByfTztcE] >>495 『HmJre.dllの正規表現での前方一致/不一致"(?<!xxx)","(?<=xxx)"では改行文字を使うことができません。 かまわずに続行しますか?』 こういう警告が出るけど、一応出来ました! ありがと!
497 名前:デフォルトの名無しさん mailto:sage [2014/05/20(火) 21:53:50.27 ID:yBFoziSg] 詳説 正規表現 第3版 の誤植 ( 日本語版 / 初版第1刷 ) : せいきなんとか akiba.geocities.jp/hp20140401/2014/007.html
498 名前:デフォルトの名無しさん mailto:sage [2014/05/22(木) 22:54:50.17 ID:cKOVk0RX] >>467 返事とても遅くなりました 助かりました ありがとうございます
499 名前:デフォルトの名無しさん mailto:sage [2014/05/23(金) 16:19:14.53 ID:M32fb6pL] てs
500 名前:デフォルトの名無しさん mailto:sage [2014/05/25(日) 00:46:30.08 ID:fP8zkgQw] "正規表現メモ" のメモ : せいきなんとか akiba.geocities.jp/hp20140401/2014/008.html 連投規制が解けないのでsc見限りました・・。
501 名前:デフォルトの名無しさん [2014/05/25(日) 01:32:03.34 ID:ILOCnL5n] ここにエジプト民の居場所なんかねえよ
502 名前:デフォルトの名無しさん mailto:sage [2014/05/25(日) 01:41:37.24 ID:fP8zkgQw] ああ、もしかして sc = アフィ厨 と思われたのかな。アフィなんかに興味無いんで。 というか1日10アクセスのサイトでアフィなんかやってたらアホだわ。 おそらく正規表現メモや雑技たんのアフィでさえ雀の涙も儲かってないはず。 正規表現を調べに来たような奴がアフィ踏むわけないって。
503 名前:デフォルトの名無しさん [2014/05/26(月) 11:23:37.93 ID:T5nGq6IH] こいつ馬鹿だ
504 名前:デフォルトの名無しさん mailto:sage [2014/05/26(月) 12:08:22.37 ID:ptXAqcmg] 「 2ch (ドット) sc 」 って書き込み出来ないワードなんだなω スペース空けてても拒否されたωωω
505 名前:デフォルトの名無しさん mailto:sage [2014/05/26(月) 12:34:16.85 ID:LnM16LwK] 2ch. sc
506 名前:デフォルトの名無しさん mailto:sage [2014/05/27(火) 19:07:51.35 ID:vDTcjh58] 2ch.sc open2ch.net machi.to sakura.ne.jp