Regular Expressionスレです。
質問する場合は必ず実装言語や処理系ソフトウェア名を示してください。
前スレ
Regular Expression(正規表現) Part15
https://mevius.5ch.net/test/read.cgi/tech/1568640311/
次スレは>>980宜しく
天ぷら等>>2以降
探検
Regular Expression(正規表現) Part16
レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん
2021/11/03(水) 19:50:01.71ID:ebAE+z9+989デフォルトの名無しさん
2023/12/02(土) 00:36:44.31ID:/f7jnFb0 挙動を仕様書で厳密に定義しているJavaScriptではこうなってた
https://tc39.es/ecma262/multipage/text-processing.html#sec-regexp.prototype-@@replace
・1回目のマッチが "abc" すべてを消費する
・2回目のマッチは文字列末尾から始まるけど正規表現が.*なのでマッチングに成功する
ただし空文字にマッチした場合、先へ進まなくなることを回避するために
次回開始位置を一つ後ろへずらす処理が入る (12.c.iii.2以下)
これにより3回目のマッチは文字列の終端+1という範囲外の位置から始まることになり失敗に終わる
https://tc39.es/ecma262/multipage/text-processing.html#sec-regexp.prototype-@@replace
・1回目のマッチが "abc" すべてを消費する
・2回目のマッチは文字列末尾から始まるけど正規表現が.*なのでマッチングに成功する
ただし空文字にマッチした場合、先へ進まなくなることを回避するために
次回開始位置を一つ後ろへずらす処理が入る (12.c.iii.2以下)
これにより3回目のマッチは文字列の終端+1という範囲外の位置から始まることになり失敗に終わる
990デフォルトの名無しさん
2023/12/07(木) 23:24:41.69ID:Ug9Hn2aN KEEPのKはあるのにPが無い、何故?
991デフォルトの名無しさん
2023/12/07(木) 23:31:35.71ID:Ug9Hn2aN (?<=uma)musu(?=me) 柿憎い
uma\Kmusu\Pme 柿安い
uma\Kmusu\Pme 柿安い
992デフォルトの名無しさん
2023/12/10(日) 09:57:52.47ID:8JqB6SG/993デフォルトの名無しさん
2023/12/10(日) 13:04:54.79ID:t3u5G9tC $は「後ろが終端である位置」の指定であって「最後まで全部」という意味ではない
なので.+$で文字列を末尾まで消費した後でも再度末尾のゼロ幅にマッチできることはバグでもなんでもない
なので.+$で文字列を末尾まで消費した後でも再度末尾のゼロ幅にマッチできることはバグでもなんでもない
994デフォルトの名無しさん
2023/12/10(日) 14:15:57.63ID:ayXeZXuA 実装上のバグではなく仕様バグだろって話をしてるのがわからないのか?
995デフォルトの名無しさん
2023/12/10(日) 15:43:26.80ID:e6Tz3fj/ .*と$でマッチするものが異なるのに.*と.*|$でマッチするものが変わらないのは明らかにバクってるな
正規表現のパターンを変えるだけでperlでは[abc][]にも[abc]にもできるのにsedではこのバグのせいで[abc][]には絶対にできなくなってる
$ printf 'abc' | sed -E 's/.*|$/[&]/g'
[abc]
正規表現のパターンを変えるだけでperlでは[abc][]にも[abc]にもできるのにsedではこのバグのせいで[abc][]には絶対にできなくなってる
$ printf 'abc' | sed -E 's/.*|$/[&]/g'
[abc]
996デフォルトの名無しさん
2023/12/10(日) 15:44:52.66ID:e6Tz3fj/ s/バク/バグ/
997デフォルトの名無しさん
2023/12/13(水) 11:48:29.08ID:wzNHEkEB ただの仕様だよ、あほらし
次スレよろ
次スレよろ
998デフォルトの名無しさん
2023/12/16(土) 09:00:59.04ID:KMxF6SWS999デフォルトの名無しさん
2023/12/16(土) 09:36:31.90ID:pgUnJUCg 天地無用
1000デフォルトの名無しさん
2023/12/16(土) 10:49:04.16ID:faoSWywL >>998
ほめてつかわす
ほめてつかわす
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 772日 14時間 59分 3秒
新しいスレッドを立ててください。
life time: 772日 14時間 59分 3秒
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 今年の漢字 [ぐれ★]
- 【おこめ券】物価高対策の“おこめ券”全米販は1枚477円で販売へ 鈴木農水大臣「国民の皆様に活用いただきやすいよう工夫いただいた」★2 [ぐれ★]
- ミス・ユニバース フィンランド代表の「つり目」写真が波紋… 本人釈明も批判やまず 協会謝罪「徹底的に検証」へ★3 [冬月記者★]
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 ★5 [蚤の市★]
- 今年の漢字は「熊」に決定! 相次ぐクマ被害 去年は「金」 [冬月記者★]
- 【麻雀】プロ雀士の岡田紗佳さんが勝訴、点数計算めぐる発言は「違法とは言えず」 大宮簡裁 [征夷大将軍★]
- 虫歯の味ってわかるよね
- 参政党議員「クジラの肉を食べないのは流通や販路に問題があるからだよね?」 [592058334]
- __トランプ、G7に代わる「Core 5」構想、米 中 露 印 日をまとめる巨大枠組み、世界秩序の再編につながる可能性 [827565401]
- VTuber叩きが大流行してる理由、1枚の画像で解説される…!! [858219337]
- 【速報】今年の漢字、「熊」!wwwwwwwwwwwwwwwwwwwwwwwww [279254606]
- お前ら俺の船に乗れ!ドン!!!!⛴🏡
