[過去ログ]
Regular Expression(正規表現) Part16 (1002レス)
Regular Expression(正規表現) Part16 http://mevius.5ch.net/test/read.cgi/tech/1635936601/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
93: デフォルトの名無しさん [sage] 2021/12/22(水) 00:48:17.09 ID:zQqayV78 正直\dを[0-9]以外にもマッチさせる仕様ってどういう時に便利なのか今一つ分からん http://mevius.5ch.net/test/read.cgi/tech/1635936601/93
94: デフォルトの名無しさん [sage] 2021/12/22(水) 03:24:15.78 ID:dkzRMG/Q [0-469bc:]++ http://mevius.5ch.net/test/read.cgi/tech/1635936601/94
95: デフォルトの名無しさん [sage] 2021/12/22(水) 09:44:58.18 ID:dK2CjfaN 住所にしろ日付にしろ上から順に書いた方が齟齬が生じないだろうに 西洋文化圏のやつらは何が何でも省略しなきゃ気が済まないんだろうな こんなもん略記許さない仕様の方が逆に全体的な効率は良いだろうに フロッピーディスクの時代なら少しでも容量減らしたいのは分からなくも無いけど http://mevius.5ch.net/test/read.cgi/tech/1635936601/95
96: 91 [sage] 2021/12/22(水) 10:25:10.40 ID:giUFecUL >>94 ありがとうございます IPv6アドレス以外には一致させたくないのです ●対象データ 1 01 2603:1096:0604:00bc:0000:0000:0000:0009 (2603:1096:0604:00bc:0000:0000:0000:0009) ←半角括弧の中だけに一致させたい _2603:1096:0604:00bc:0000:0000:0000:0009_ ←_は半角スペースの中だけに一致させたい 2603:1096:604:bc::9 (2603:1096:604:bc::9) _2603:1096:604:bc::9_ ●希望する結果 2603:1096:0604:00bc:0000:0000:0000:0009 2603:1096:0604:00bc:0000:0000:0000:0009 260
3:1096:0604:00bc:0000:0000:0000:0009 2603:1096:604:bc::9 2603:1096:604:bc::9 2603:1096:604:bc::9 http://mevius.5ch.net/test/read.cgi/tech/1635936601/96
97: デフォルトの名無しさん [] 2021/12/22(水) 11:10:46.72 ID:j6Uulo2p >>95 個人的な本名や住所が先頭に来るのは西洋文化圏というよりイスラム圏も含めた地中海世界 プログラミング言語だと名前空間が上から順で統一されてるのに不思議だよね http://mevius.5ch.net/test/read.cgi/tech/1635936601/97
98: デフォルトの名無しさん [sage] 2021/12/22(水) 11:53:44.33 ID:dK2CjfaN >>96 >>74と同じ手法でやればいいじゃない http://mevius.5ch.net/test/read.cgi/tech/1635936601/98
99: 91 [sage] 2021/12/22(水) 12:01:15.82 ID:giUFecUL >>98 ありがとうございます どういうことでしょうか?例えば>>94さんの例を元にして下の通りにしてもIPv6以外に一致してしまいます (?<![.0-9])([0-469bc:]++)(?![.0-9]) http://mevius.5ch.net/test/read.cgi/tech/1635936601/99
100: デフォルトの名無しさん [sage] 2021/12/22(水) 16:45:06.37 ID:rmiXIWtW IP アドレスの正規表現ぐらい、公式が発表しているのでは? http://mevius.5ch.net/test/read.cgi/tech/1635936601/100
101: デフォルトの名無しさん [sage] 2021/12/22(水) 17:23:12.37 ID:Q/8wGtmi >>99 最小がわからんので{8,}は適当だが、例文の限りではこれでいける。 ちょいと調べたら16進数とのことなので0-9,a-fなんでないの? [0-9a-f:]{8,} http://mevius.5ch.net/test/read.cgi/tech/1635936601/101
102: デフォルトの名無しさん [sage] 2021/12/22(水) 17:29:20.12 ID:SKIY34Ty IPv6を正確に捕捉するのは難しいだろ 2001:db8:0:0:1::1は×で、2001:db8::1:0:0:1が正しい ::ffff:c000:0280 = ::ffff:192.0.2.128 2001:db8:a::123/64 fe80::3%1 http://mevius.5ch.net/test/read.cgi/tech/1635936601/102
103: 91 [sage] 2021/12/22(水) 17:33:56.16 ID:giUFecUL >>101 ありがとうございます それだと16:54:09みたいな日付にも一致してしまいました http://mevius.5ch.net/test/read.cgi/tech/1635936601/103
104: デフォルトの名無しさん [sage] 2021/12/22(水) 17:41:16.95 ID:Q/8wGtmi >>103 そのパターン限定なら{8,}を{15,}とかで回避できる http://mevius.5ch.net/test/read.cgi/tech/1635936601/104
105: 91 [sage] 2021/12/22(水) 17:52:56.27 ID:giUFecUL >>104 ありがとうございます {9,}にしたら出来ました! ちなみにこういうものに一致しないようにする方法はありますか? :2603:1096:604:bc::9 ←先頭に:がある こういう出現はないはずなんですが、もし簡単な正規表現の追加で出来たら嬉しいなあと http://mevius.5ch.net/test/read.cgi/tech/1635936601/105
106: 91 [sage] 2021/12/22(水) 17:58:56.91 ID:giUFecUL >>105 出来た・・・と思ったんですが、文字数の調整で対応できない数字や英字の連続に一致してしまいダメでした http://mevius.5ch.net/test/read.cgi/tech/1635936601/106
107: デフォルトの名無しさん [sage] 2021/12/22(水) 18:06:08.63 ID:Q/8wGtmi これでどう? ただし頭:への対応は無理 ([0-9a-f:]+:){4,}[0-9a-f]+ http://mevius.5ch.net/test/read.cgi/tech/1635936601/107
108: 91 [sage] 2021/12/22(水) 18:17:32.37 ID:giUFecUL >>107 度々ありがとうございます それでも数字や英字の連続に一致してしまいダメでした 08d9c24701be 合ってるか分からないのですが、今のところ>>91の正規表現の末尾に[0-9]*を加えています・・・ (([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0
-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))[0-9]* http://mevius.5ch.net/test/read.cgi/tech/1635936601/108
109: デフォルトの名無しさん [sage] 2021/12/22(水) 18:29:09.14 ID:G1M4O4Y+ >>108 ところどころfe80とかffffみたいにベタ書きしてるのはなぜ? http://mevius.5ch.net/test/read.cgi/tech/1635936601/109
110: デフォルトの名無しさん [sage] 2021/12/22(水) 21:01:48.91 ID:++/G/dKU 忘年会ネタにどうぞ https://github.com/tonco-miyazawa/regex_etc/blob/master/Abcent_Zero.txt https://github.com/tonco-miyazawa/regex_etc/blob/master/OneLineDefineOperator.txt http://mevius.5ch.net/test/read.cgi/tech/1635936601/110
111: デフォルトの名無しさん [sage] 2021/12/23(木) 03:07:53.75 ID:0XYH//o1 (?<!\h)(IPv6の正規表現ググレカス)(?!\h) http://mevius.5ch.net/test/read.cgi/tech/1635936601/111
112: デフォルトの名無しさん [sage] 2021/12/23(木) 09:13:03.87 ID:fgU7IqZ3 >>108 >08d9c24701be ([0-9a-f:]+:){4,}[0-9a-f]+ 俺の環境ではマッチしないし、しないはずだけど? http://mevius.5ch.net/test/read.cgi/tech/1635936601/112
113: デフォルトの名無しさん [sage] 2021/12/23(木) 09:14:21.91 ID:fgU7IqZ3 >>108 ちなみにipv6の正規表現で検索して色々出てきたけど、下のやつから頭とお尻の(^$)とるとマッチするんだが、改行が含まれてしまう。 他は>>96がイレギュラーすぎてマッチしないのが多い。 http://tech-uh-oh.blogspot.com/2010/02/ipv6.html http://mevius.5ch.net/test/read.cgi/tech/1635936601/113
114: 91 [sage] 2021/12/23(木) 12:05:51.36 ID:czwrZ62f >>111 ありがとうございます IPv6の正規表現も含めて教えてほしいです >>112 ありがとうございます すみません、もう一度試したところ08d9c24701beには一致しませんでした これは対象データと希望する結果に書き忘れていたのですが、 教えてもらった([0-9a-f:]+:){4,}[0-9a-f]+だと2002:a05:622a:15cc::に一致しませんでした http://mevius.5ch.net/test/read.cgi/tech/1635936601/114
115: 91 [sage] 2021/12/23(木) 12:10:08.55 ID:czwrZ62f >>113 度々ありがとうございます そのURLにある正規表現だと長すぎてサクラエディタに登録できませんでした http://mevius.5ch.net/test/read.cgi/tech/1635936601/115
116: デフォルトの名無しさん [sage] 2021/12/23(木) 12:30:01.85 ID:fgU7IqZ3 >>114 ([0-9a-f:]+:){4,}[0-9a-f:]+にすれば、それもマッチするけど また要らないがマッチする可能性も出てくる。 http://mevius.5ch.net/test/read.cgi/tech/1635936601/116
117: 91 [sage] 2021/12/23(木) 12:52:17.35 ID:czwrZ62f >>116 何度もありがとうございます 1つの正規表現にまとめることにこだわらずに、 >>116で教えてもらったものと>>108の2つで対応したいと思います どうもありがとうございました >>108だと以下のようなものが一致せず困っていたので・・・ 2001:db8::1:0:0:1 2001:db8::0:1:0:0:1 2001:0db8::1:0:0:1 http://mevius.5ch.net/test/read.cgi/tech/1635936601/117
118: デフォルトの名無しさん [sage] 2021/12/23(木) 18:54:52.16 ID:vyeaRFwP (?<![\h:])(?:(\h{1,4}:)(?:(:\h{1,4}){1,6}|:)|\g'1'{2}(?:\g'2'{1,5}|:)|\g'1'{3}(?:\g'2'{1,4}|:)|\g'1'{4}(?:\g'2'{1,3}|:)|\g'1'{5}(?:\g'2'{1,2}|:)|\g'1'{6}(?:\g'2'{1}|:)|\g'1'{7}(?:\h{1,4}|:))(?![\h:]) http://mevius.5ch.net/test/read.cgi/tech/1635936601/118
119: 91 [sage] 2021/12/23(木) 18:57:04.64 ID:czwrZ62f >>118 わたし宛でしょうか? それを試したら何にも一致しませんでした・・・ http://mevius.5ch.net/test/read.cgi/tech/1635936601/119
120: デフォルトの名無しさん [sage] 2021/12/23(木) 20:41:17.01 ID:XObIp/CD >>113 \sに改行が含まれるからでしょ Rubyとかなら0x09〜0x0D(水平タブHT,LF改行,垂直タブVT,改頁,CR改行)と0x20(スペース) サクラエディタの鬼雲なら上記に加えて、 その他の改行種(NEL,PS,LS)や空白種(全角スペースやNBSPなど) http://mevius.5ch.net/test/read.cgi/tech/1635936601/120
121: デフォルトの名無しさん [sage] 2021/12/23(木) 21:45:21.05 ID:vyeaRFwP ([0-9a-f]{1,4}:)(?:(:[0-9a-f]{1,4}){1,6}|:)|\g'1'{2}(?:\g'2'{1,5}|:)|\g'1'{3}(?:\g'2'{1,4}|:)|\g'1'{4}(?:\g'2'{1,3}|:)|\g'1'{5}(?:\g'2'{1,2}|:)|\g'1'{6}(?:\g'2'{1}|:)|\g'1'{7}(?:[0-9a-f]{1,4}|:) (?<![0-9a-f:])(?:([0-9a-f]{1,4}:)(?:(:[0-9a-f]{1,4}){1,6}|:)|\g'1'{2}(?:\g'2'{1,5}|:)|\g'1'{3}(?:\g'2'{1,4}|:)|\g'1'{4}(?:\g'2'{1,3}|:)|\g'1'{5}(?:\g'2'{1,2}|:)|\g'1'{6}(?:\g'2'{1}|:)|\g'1'{7}(?:[0-9a-f]{1,4}|:))(?![0-9a-f:]) (?<![0-9
a-f])(?:([0-9a-f]{1,4}:)(?:(:[0-9a-f]{1,4}){1,6}|:)|\g'1'{2}(?:\g'2'{1,5}|:)|\g'1'{3}(?:\g'2'{1,4}|:)|\g'1'{4}(?:\g'2'{1,3}|:)|\g'1'{5}(?:\g'2'{1,2}|:)|\g'1'{6}(?:\g'2'{1}|:)|\g'1'{7}(?:[0-9a-f]{1,4}|:))(?![0-9a-f:]) http://mevius.5ch.net/test/read.cgi/tech/1635936601/121
122: デフォルトの名無しさん [sage] 2021/12/24(金) 07:37:01.80 ID:MVBh4BeN (([0-9a-f]{1,4}):){7}(?:\g'2'|:)|\g'1'{6}(?:(:\g'2')|:)|\g'1'{5}(?:\g'3'{1,2}|:)|\g'1'{4}(?:\g'3'{1,3}|:)|\g'1'{3}(?:\g'3'{1,4}|:)|\g'1'{2}(?:\g'3'{1,5}|:)|\g'1'(?:\g'3'{1,6}|:) http://mevius.5ch.net/test/read.cgi/tech/1635936601/122
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 880 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.018s