正規表現道場 Part2
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2012/09/19(水) 18:58:43.51ID:bdgNsY2f・言語不問
・質問も大歓迎。使用言語を書くのを忘れずに。
正規表現と関係ない話・質問は他スレへどうぞ。
前スレ
正規表現道場
http://kohada.2ch.net/test/read.cgi/php/1168450843/
0161nobodyさん
2014/03/30(日) 14:02:22.42ID:???俺はロケールや文字コードの知識はほとんど無いんでよく分かってない。
↓は winXPsp3 + perl5.16.3 + ロケール = 「日本」 の環境での実験結果。
・ [ァ-ィ] が ア にマッチするか実験。( 文字コード順ならマッチしないはず )
----------------------------------------
use locale;
if ( "ア" =~/[ァ-ィ]/ ){ print "hit\n"; }
else { print "no hit\n"; };
----------------------------------------
結果: hit ( マッチしたので文字コード順ではない )
この環境での範囲指定は↓の順みたい。これはshift_jisの並び順とは違う。(これが辞書順?)
----------------------------------------
_0123456789aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZァアィ
スセソタチッツテトナニヌネノハヒフヘホマミムメモャヤュユョヨラリルレロワヲン
----------------------------------------
文字コードでなくロケールに依存するという発想は思い付かなかったわ、そっちの線で
また実験しながら遊んでみるよ、辞書順とやらも調べてみる。ヒントありがとう。
0162nobodyさん
2014/03/31(月) 00:44:57.15ID:???ついに [a-z] が t 以降にマッチしない動作の再現に成功!
et_EE.ISO8859-1 の代わりに et_EE.ISO8859-15 を使ったら再現出来ました!
今まで助言をくれたみなさんありがとう〜。自分一人じゃ絶対無理だった。
↓こちらの方々にも感謝〜
初心者もOK! FreeBSD質問スレッド その117
http://toro.2ch.net/test/read.cgi/unix/1380865524/938-954n
詳しい手順はもう少し調べて整理してから載せます。
0163nobodyさん
2014/04/01(火) 22:34:44.19ID:???http://akiba.geocities.jp/hp20140401/
とりあえず場所確保。
0164nobodyさん
2014/04/12(土) 17:21:41.17ID:???正規表現道場 Part2
http://nozomi.2ch .sc/test/read.cgi/php/1348048723/l50
■ 2ch.netの問題点
・ 2chscがNGワードになってるので正規表現をスレに貼るのに支障が出る。何より言論統制はイクナイ。
・ 管理人が今後どう動くか予測が付かない。
自暴自棄になりIPや書き込み履歴を大公開して逃走する可能性すらある。会社IPの人は注意。
0165nobodyさん
2014/04/12(土) 20:53:07.28ID:kZRku0LV0166nobodyさん
2014/04/15(火) 11:21:18.41ID:qQPWwAKLhttp://d.hatena.ne.jp/dacs/20080422/1208868051
○○/△△
[□□
という文字列から△△だけを抜き出したくて、色々試してみているのですがどうもうまくいきません
".*/" -> replace -> ""
"\
.+" -> replace -> ""
だと思うのですが、何か間違いがあるのでしょうか?
ちなみに
"[.+" -> replace -> ""
も試してみましたがダメでした
0167nobodyさん
2014/04/15(火) 20:38:11.07ID:CfZz5H/X文字列の開始も終わりも指定してないということは
.*/で一番最後の/までが対象として消える可能性はある
0169nobodyさん
2014/05/08(木) 02:37:21.25ID:???d:\\abc\\123\\ のように入力しているのですが、間違っていますか?
0170nobodyさん
2014/05/08(木) 03:20:39.96ID:Zyar7s4i0171nobodyさん
2014/05/22(木) 01:25:49.65ID:???0172nobodyさん
2014/05/22(木) 14:43:31.27ID:???>qr/\"((?:\\[\\\"]|.)*?)\"/
> これはよっぽど自信がないと書けない書き方だ。
今考えると弾たんは単に2文字否定の作り方を知らなかっただけだな・・。
知ってたらこんなあやふやなものを作ろうなんて思わないし。
早さに拘るのに早い正規表現の作り方を知らないというちょっと残念な弾たん。
他の正規表現を見ても正規表現自体のスキルは高くない。
なんでもこなすオールラウンダーだから薄く広くになるんだろうな。
しかしこの程度の正規表現スキルでcpanのモジュール作って大丈夫なんだろうか。
探せばバグが出てきそうな予感。
0173nobodyさん
2014/05/22(木) 15:18:43.78ID:???0174nobodyさん
2014/05/22(木) 16:18:04.88ID:???0175nobodyさん
2014/05/22(木) 16:49:22.13ID:???弾はなんだかんだ色々作ってるし色々な方面に貢献してる。
0176nobodyさん
2014/05/22(木) 18:11:53.77ID:???0177nobodyさん
2014/05/23(金) 17:54:18.09ID:???## m//
キャッシュを保持してない状態では空文字列にマッチする。
うっかりするとバグの原因になり得る。
0178nobodyさん
2014/05/23(金) 19:00:28.59ID:???Webブラウザで投稿したらBOT疑惑なのでCapchaしろになってそれで解除できた。
URLを貼りまくって連投規制になった場合は知らん。
0179nobodyさん
2014/05/23(金) 19:22:48.54ID:???俺の場合は「連続投稿は禁止されています。Error!」って出るだけ。
普通に連続投稿が原因で規制食らってるみたいだからもうダメかも分からんね。
人が少ないから自然に独り言みたいになるのにそれで規制されたら
ますます人少なくなるなw
0180nobodyさん
2014/05/23(金) 20:03:59.73ID:Hym2JLxi0181nobodyさん
2014/05/23(金) 22:52:00.36ID:???http://omatomen.net/archives/1002062987.html
0182nobodyさん
2014/05/24(土) 02:35:30.04ID:???(?num) の説明文にある・・
-------------------
(\()?[^()]+(?(1)\))
-------------------
これは (?num) とはまったく関係ない正規表現。ただの条件文。
0183nobodyさん
2014/05/24(土) 15:06:27.80ID:???----------------------------
(?(R)...) PCREで、再帰的パターンの開始を示します。
<(?:(?(R)\\d++|[^<>]*+)|(?R))*>
----------------------------
説明文は間違い。これは条件式の条件。\\d は \d の間違い。
perldoc.jp
http://perldoc.jp/docs/perl/5.14.1/perlre.pod
(?(condition)yes-pattern|no-pattern) の項目を参照。
0184nobodyさん
2014/05/27(火) 02:44:28.34ID:???・古本
初版 &nbsp;500円 → 1998円
2版 1600円 → 3150円
3版 4000円 → 3709円
・新品
3版 5184円
Amazon - "正規表現"
http://www.amazon.co.jp/s/field-keywords=%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE
0185nobodyさん
2014/05/27(火) 03:16:35.15ID:???0186nobodyさん
2014/05/27(火) 03:43:16.09ID:???↓ ^ か \A 忘れてね?
------------------------
$method =~ s/.*:://o;
------------------------
0187nobodyさん
2014/05/27(火) 03:49:35.83ID:???my ($hex, $name) = ($line =~ /^([0-9A-Fa-f]+)\s+(.*)/);
next if $name =~ /[a-z]/; # range, not character
----------------------------------------------------------
2行目だけ小文字に限定されてる。これで良いのか悪いのかは分からないが。
0188nobodyさん
2014/05/27(火) 14:20:55.14ID:???-----
せっかく [eE] と書いてるのに /i
= ($num =~ /([+-])?(\d+)(?:\.(\d+))?(?:[eE]([+-]?\d+))?/io);
-----
ちゃんと動くんだろうけどアンカー付けないのが気持ち悪い。
$int =~ s/(.*)(.{48})\z/$2/o;
-----
これミスでね? [k|g]
if ($style =~ /(?:romaji|[k|g]ana)$/){
0189nobodyさん
2014/05/27(火) 14:23:03.78ID:???皆はこうならぬように
0190nobodyさん
2014/05/27(火) 14:28:03.82ID:???$ja =~ tr/[G-Z]//d;
ITPro: tr///d
http://itpro.nikkeibp.co.jp/article/Reference/20080930/315784/
0191nobodyさん
2014/05/27(火) 14:50:18.14ID:???使われてなかったんだろう。ああいう時こそ効果的なのに。
0192nobodyさん
2014/05/27(火) 15:43:22.68ID:???/o なし
12724/s
/o あり
31689/s
/o あり は2.5倍早い。これは報告したほうがいいかも。
0193nobodyさん
2014/05/27(火) 16:02:40.01ID:???これに /o がついてるとなんか笑ってしまうw
余談追加。俺は報告なんかしないんで報告したい人がいたらしてね。
小飼 弾が手負いのうちに容赦なくツッコミを入れておく
http://akiba.geocities.jp/hp20140401/2014/006.html
0194nobodyさん
2014/05/29(木) 03:21:04.45ID:???---------------
use utf8;
---------------
\d
---------------
弾たんにならこれで通じるだろう。(確信)
0195nobodyさん
2014/05/29(木) 16:45:47.77ID:???ttp://kurt.scitec.kobe-u.ac.jp/~kikyo/lec/07/automaton/k5.pdf
行列の次は集合か・・もう忘れたよ・・覚えたことないけど。
0196nobodyさん
2014/05/30(金) 01:37:35.60ID:???http://www.kwansei.ac.jp/hs/z90010/sugaku1/kakuritu/syugo/set.htm
とっても分かりやすい。・・あれ?これ大学でやる内容か?中がっ(ry
0197nobodyさん
2014/05/30(金) 01:52:56.08ID:???0198nobodyさん
2014/05/30(金) 06:37:19.19ID:???0199nobodyさん
2014/05/30(金) 19:16:27.41ID:???結果 hit
答え、なし
0200nobodyさん
2014/05/30(金) 21:43:37.74ID:???() eq ""
() == ""
"" eq undef
"" == undef
() eq undef
() == undef
すべてtrueが返る。
0201nobodyさん
2014/05/30(金) 22:31:10.55ID:???http://blog.livedoor.jp/dankogai/archives/51268304.html
ちなみにブログのトップではGoogle Chromecastをボロクソに叩きつつ、Chromecastへのamazonアフィを
張るというすご技を展開されております。
こういう人相手に>>193を報告しにいってもスルーされるだけだと思うよ。カネにならないからね。
0202nobodyさん
2014/06/01(日) 03:26:43.94ID:???0204nobodyさん
2014/06/01(日) 10:29:53.68ID:???0205nobodyさん
2014/06/06(金) 06:34:46.02ID:???0206nobodyさん
2014/06/06(金) 06:36:44.82ID:???0207nobodyさん
2014/06/06(金) 06:39:17.80ID:qyn3RpL30208nobodyさん
2014/06/09(月) 20:39:55.26ID:Xlk9Lxk9lat = 'あい';
body = '<a href="あい">あい</a>';
reg = new RegExp(">[^<][\s\S]*?" + lat + "[\s\S]*?<","m");
body.match(reg);
console.log(reg.index);
13が返って欲しいのですが、undifinedになります。
0209nobodyさん
2014/06/10(火) 15:56:17.87ID:???Regular Expression(正規表現) Part12
http://peace.2ch.net/test/read.cgi/tech/1387257592/
jsならieか否か、または両方かも書いたほうが良いでしょう。
0210nobodyさん
2014/06/10(火) 18:29:25.24ID:pkqjoeBFご誘導ありがとうございます!
0211nobodyさん
2014/06/19(木) 11:10:47.66ID:???計算機基礎論 - set.pdf
0212nobodyさん
2014/06/21(土) 14:09:56.93ID:???関連スレのテンプレ入り
理論計算機科学
http://peace.2ch.net/test/read.cgi/tech/1403321199/
0213nobodyさん
2014/06/25(水) 15:49:19.16ID:???http://aozoragakuen.sakura. ne.jp/probability/probability.html
豪快に脱線中。言論統制対策でスペース。
0214nobodyさん
2014/06/25(水) 16:17:08.28ID:???0215nobodyさん
2014/06/25(水) 16:21:27.13ID:???0216nobodyさん
2014/06/25(水) 16:26:13.98ID:???0217nobodyさん
2014/06/26(木) 14:34:09.08ID:???http://www.math.kobe-u.ac.jp/HOME/saji/mathyomi/probability.html
確率は正規表現の処理効率向上に使う。
"|" による分岐で確率の高いほうを前に置いたほうが早くなるetc..
0218nobodyさん
2014/06/27(金) 22:19:38.37ID:???my $cnt=0;
for (my $i=0; $i<1000000; $i++){
if ( int(rand(3)) == 0 || int(rand(3)) == 2 || int(rand(3)) == 1)
{
$cnt++;
}# if
} #for
print "$cnt\n";
__END__
&& ・・・ A∧B
|| ・・・ A∨B
0219nobodyさん
2014/06/29(日) 14:17:12.43ID:???■ このスレッドは過去ログ倉庫に格納されています