Regular Expression(正規表現) Part17 (272レス)
上下前次1-新
1(2): 2023/12/16(土)08:59 ID:uVHZ7e2j(1/4) AAS
Regular Expressionスレです。
質問する場合は必ず実装言語や処理系ソフトウェア名を示してください。
前スレ
Regular Expression(正規表現) Part16
2chスレ:tech
次スレは>>980宜しく
テンプレ>>2以降
189: 2024/09/12(木)14:21 ID:iwy8LWRU(1) AAS
>>183
非ascii文字はユニコードエスケープされてる?
190: 2024/09/12(木)14:33 ID:G9h42jpn(3/6) AAS
JSONだから基本UTF-8なんじゃないのか?
191: 2024/09/12(木)14:35 ID:G9h42jpn(4/6) AAS
パーセントエスケープか
あるのとないのと両方あるしなあ
192: 2024/09/12(木)14:54 ID:71tHR6b6(2/2) AAS
北製のエディタ選んでぶっこ抜かれてるやつはいないな?
出所の怪しいやつは避けるんだぞ?
193(3): 2024/09/12(木)16:03 ID:3oNIjHZT(1) AAS
>>184
>>187
ありがとう使ってみる
対象ファイルはUTF8で改行はLFとCF+LF混合(1ファイル内では統一)
日本語2バイト文字はエスケープなしに普通に表記されてる
194(1): 2024/09/12(木)16:55 ID:tplSlOtQ(1) AAS
>>187,193
dnGrepも良い
マッチ箇所の前後数行表示やマッチファイル全体プレビュー表示でサクッと探して
diffとtext editor用の外部コマンドラインを複数登録して使ってる
(有名どころのテンプレートあり)
195: 2024/09/12(木)17:00 ID:G9h42jpn(5/6) AAS
>>193
テキストエディタは何でも良いとは言ったけど
起動引数にファイル名と行位置を指定できるものじゃないと使い物にならない
メモ帳はダメだが大抵大丈夫
196(1): 2024/09/12(木)17:38 ID:G9h42jpn(6/6) AAS
>>194
良さそうだなと思ったらwin7には無理っぽい(.NET8だとか)
197: 2024/09/13(金)06:32 ID:11vS+uA+(1) AAS
>>196
文字エンコーディング自動判別が出来るので、ちょっと古めのcp932とUTF8の混在環境で重宝すると思ったがそれは残念
>>183,193は大丈夫そうだけど(根拠なし)
198: 2024/09/23(月)23:23 ID:kDMCxsRj(1) AAS
pcre2の作者さんが後継者探してる
27年続けてきて最近年を感じるようになったとか
199(1): 2024/09/26(木)08:21 ID:JQMFr7dw(1) AAS
老朽ソフトウェアの後継者問題って
需要があれば勝手にメンテされるし無ければ消えるだけだよ
正規表現は時代に合ってないからこの概念ごと消えるかもしれない
200: 2024/09/26(木)20:55 ID:DovoaZNg(1) AAS
>>199
正規表現が時代に合ってないってどういうこと?
201: 2024/09/26(木)22:02 ID:KgNEnM1+(1) AAS
たぶんだけど自然言語で書く、かな
いまでもコンパイルはしてるし
曖昧な表現だとランタイムエラーになるのはおなじ
202: 2024/09/26(木)22:22 ID:ingxpjLa(1) AAS
AIと喋ってろ
203(2): 2024/09/29(日)08:05 ID:rL2U3h48(1) AAS
自然言語を聞いたAIが作るのが正規表現というオチ
既存の正規表現エンジン用の正規表現ではなくAIが生成した正規表現を動かすためだけの
正規表現エンジンも生成される
既存の正規表現エンジンと比べてデータサイズが小さく不要な機能が無いため高速に動作
64コアCPUでテキストデータの64ヶ所を同時に検索
正規表現がテキストにマッチしない場合の速さが2024年時点の通常検索の速さを超えてしまう
野良猫理論: ある限られた空間であちこちをうろつく複数の野良猫が置き餌を見つけるのに
省1
204: 2024/10/01(火)11:39 ID:Z3sXryIq(1) AAS
>>203
>野良猫理論:
なるほど、そうかも
205: 2024/10/01(火)11:45 ID:v9xyba12(1) AAS
>>203
妄想はAIとすれば捗るぞ
206: 2024/10/06(日)00:20 ID:YLpbtiCB(1) AAS
DFA 「NFA、僕は君のことをクリーネ閉方したい」
NFA 「受理できません」
207(1): 2024/10/08(火)20:25 ID:2vPrSKyO(1) AAS
久しぶりにプログラム板にきました
あるwebサイトのたとえばx0000からx99999までのurl内それぞれ個別にあるたとえば日付等の項目を
すべてカンマ区切りで抜き出す正規表現を考えようとしましたが
結局、項目が10個まであるわけじゃないので
<!DOCTYPE.*ほにゃらら項目、ほにゃらら項目…ほにゃらら項目、ほにゃらら*</html>
てのを10まであるわけじゃない項目分それぞれ抜き出しました
本来なら、 項目,項目,項目…… で抜き出せるように一発で正規表現使えば何とかなるのでしょうけれど、
省8
208: 2024/10/08(火)22:03 ID:XPh9YV+I(1) AAS
>>207
1. まず日本語を整理する能力を身につけましょう
2. 次にテストケースを整理する能力を身につけましょう
3. そして1.と2.で身につけた能力を使ってChatGPTに問い合わせましょう
さすれば望む答えが楽に得られます
209: 2024/10/09(水)01:44 ID:WkCTujRI(1/2) AAS
ここは野良猫理論を数学的に証明するスレになりました
210: 2024/10/09(水)02:26 ID:LpRCWPua(1) AAS
すごく読み難いし目的も読み取れない
終わってる
211: 2024/10/09(水)03:04 ID:w53uZCE9(1) AAS
頑張って2回読んだけど何のアドバイスもできそうにない
212: 2024/10/09(水)05:04 ID:z5soGBkc(1) AAS
Excel VBA 質問スレ Part81
とやらにいる障害者みたいだね
213: 2024/10/09(水)09:59 ID:nVMNMgni(1) AAS
DOCTYPE全然関係なかったんやな
>>180がアタリ
>>179,181はハズレ
214: 2024/10/09(水)12:56 ID:WkCTujRI(2/2) AAS
とりあえずxenoをあぼーん登録しといた
215: 2024/10/10(木)13:27 ID:WHQFPCFe(1) AAS
そういえばこのスレが伸びたのも発端は>>120だったな
>>120みたいな難問を気軽に質問されたら困る
216(1): 2024/10/12(土)15:23 ID:gMUOKJHq(1/2) AAS
●Regular Expressionの使用環境
VS Code 1.94.2 の検索バー
●検索か置換か?
置換
●説明
htmlファイルを開いている。
href属性が .css で終わらない場合に属性値を空文字列へ置換したい。
省11
217(1): >>216 2024/10/12(土)15:33 ID:gMUOKJHq(2/2) AAS
原理はよくわかりませんが自己解決しました
href="[^"]+(?<!\.css)"
218: 2024/10/12(土)16:13 ID:qxhXc26A(1/2) AAS
href="[^"]+(?!\.css)"
<a href="URL.css">link</a>で"[^"]+の最後の文字はs
つまりsの位置では.cssではないのでマッチする
219: 2024/10/12(土)16:15 ID:qxhXc26A(2/2) AAS
sの後ろ(つまり")の位置に訂正
220: 2024/10/12(土)17:58 ID:hwVWGPYm(1) AAS
正規表現関係ないけどhtmlタグ周りの操作は
できるだけDOM経由でやっておいたほうが楽で安全だと思う
htmlの書き方がみんな揃ってるとは限らないし
<div>href="foo"</div>とかlocation.href=“bar”にはマッチしないようにするとか
いろいろ考慮ポイントが増えてミスするリスクも高くなる
DOM経由でやっておけばその辺は安心
document.querySelectorAll("[href]:not([href$='.css'])").forEach(x=>x.setAttribute("href", ""))
221: 2024/10/13(日)15:34 ID:josLIOo8(1) AAS
>>217
それ大正解だよ、すごい
それ以上のものを作れと言われたら大抵の人は悩む
というか>>217の答えに辿り着けない人が多数かと
222: 2024/11/02(土)23:35 ID:5ILrPZJU(1) AAS
正規表現のオペレータの分類についての質問です
assertionにアンカーやバウンダリを含める分類はあまり見かけませんが何故でしょう?(例dotnet文書)
以下(多分regex界で著名な)参考サイトより引用
Assertions. The traditional regular expression metacharacters ^ and $ can be viewed as assertions about the text around them: ^ asserts that the previous character is a newline (or the beginning of the string), while $ asserts that the next character is a newline (or the end of the string). Perl added more assertions, like the word boundary \b, which asserts that the previous character is alphanumeric but the next is not, or vice versa.
外部リンク[html]:swtch.com
確かにマッチに含まれないという意味ではよくassertionであると言われるlookback/aheadと同様です
何か含めないことで利点があるのでしょうか?
223: 2024/11/09(土)12:53 ID:k7Zpjetb(1) AAS
これに答えられる人はここに数人いるかどうかなのでは
(私はもちろん答えられません)
勘で答えるなら先読み、後読みは後から出てきたものなので元からあった
^ $ \b とは別物扱いになった、とかですかね?すみません、分かりません
224: 2024/11/09(土)21:56 ID:f+X68XQj(1) AAS
(ゼロ幅)アサーションには含まれる、(ルックアラウンド)アサーションには含まれない
でもルックアラウンドアサーションだけを指して単にアサーションと呼ぶなんてことがあるかな、大体何か修飾語がついてるよね?
単にアサーションと呼ばれるのはゼロ幅アサーションの方だと思う
実際参考サイトもそんな感じだろう知らんけど
225: 2024/11/19(火)12:37 ID:UdPT9kjC(1/3) AAS
Google spreadsheetでREGEXREPLACE関数で置換するやり方を教えていただけないでしょうか
実行したい内容は以下の通りです。
●Regular Expressionの使用環境
Google spreadsheet
●検索か置換か?
置換
●説明
省9
226: 2024/11/19(火)13:15 ID:qWVXBGcO(1/2) AAS
俺の知識の範囲では正規表現だけでは不可能
227: 2024/11/19(火)13:28 ID:TpNNC8ku(1/4) AAS
その環境がわからんので一般的な場合として
/(?<=[^ ,.?\n\r])[^ ,.?\n\r]/*/g
/(?<=[a-z’'])[a-z’']/*/ig
228(1): 2024/11/19(火)13:45 ID:qWVXBGcO(2/2) AAS
なるほど。後読を使えばいいのか
229: 2024/11/19(火)14:33 ID:UdPT9kjC(2/3) AAS
後読はこの関数では使えないようなのですが、関数ではなくて置換機能なら使えるようなので試してみます!
ありがとうございました!!
230(1): 2024/11/19(火)15:02 ID:TpNNC8ku(2/4) AAS
The problem is the ’XXX’.
こういうのはあるのかな?
231: 2024/11/19(火)15:19 ID:TpNNC8ku(3/4) AAS
>>228
正規表現のどの文法を使うかじゃなくて、どういう論理にするかを思いつくかどうかだから
(とんちクイズと一緒で発想力の問題)
なお230のようなケースがあるのならおそらく再起を使う必要がでてくると思う
232: 2024/11/19(火)15:56 ID:UdPT9kjC(3/3) AAS
>>230
これは想定していなかったですが今回はなさそうです
233: 2024/11/19(火)17:34 ID:G+8Uvgpo(1) AAS
Apps Script使うのがシンプルなこともある
234: 2024/11/19(火)23:06 ID:TpNNC8ku(4/4) AAS
/(?<=[a-z]|[a-z]')[a-z]|(?<=[a-z])'(?=[a-z])/*/ig
(アポストロフィは半角のみにしてる)
This is the 'Tom's Home'.
→ T*** i* t** 'T**** H***'.
無理ーー
'Rock'n'Roll' is "Rock 'n' Roll". → 'R**********' i* "R*** 'n' R***".
'' is NULL strings. → '' is NULL strings.
235: 2024/11/20(水)17:07 ID:vf/ffllo(1) AAS
regexpは数学(キリっ
236: 2024/11/20(水)17:38 ID:ibyj9elY(1) AAS
ウザっ
237: 2024/12/12(木)23:55 ID:9bmybcd/(1) AAS
暫く使わないとすぐ忘れてしまう
低スキルだから使う頻度が少なくて記憶が定着しない
238: 2024/12/13(金)00:12 ID:EgfV0Bor(1) AAS
わかる
特に(?!これ系一切覚えてない)
239: 2024/12/13(金)13:01 ID:hybzdr+3(1) AAS
=^^= こんな演算子をどこかの記事で見た記憶はあるけど意味は忘れた
240: 2024/12/13(金)13:19 ID:Zywldz4i(1) AAS
∧,,∧
(=^v^) にょほほー
/ l
(OuuO
241: 2024/12/19(木)16:02 ID:1szj+7uv(1/2) AAS
●Regular Expressionの使用環境
テキストエディタのMeryや、テキストエディタのgPadの置換
●検索か置換か?
検索
●説明
英文中のスペース以外の、他のスペースを削除したいです。
●対象データ
省20
242(1): 2024/12/19(木)16:06 ID:wZwgXxbf(1) AAS
なかなかの丸投げだな
¥sを[ \t ]
243: 2024/12/19(木)17:08 ID:1szj+7uv(2/2) AAS
>>242
希望通りになりました。即レス大感謝ありがとうです。
いちおう自分なりに半年間ほど色んなパターンに変えてやってみてたんですが、大変助かりました。
244: 2024/12/20(金)20:07 ID:7538eGNC(1) AAS
すげー半年がかりの疑問を瞬殺か
やっぱ詳しい人に聞いておくものだな
245: 2024/12/21(土)01:36 ID:lQ0nYrFo(1) AAS
半年同じ問題に取り組める根気は素晴らしいが初心者は効率が悪いね
Googleとかは20分だか30分だか手が止まったら質問しろって企業文化らしい
246: 2024/12/22(日)15:36 ID:8OMG/th9(1) AAS
メモ
Meryで\sを全角スペースにマッチさせるには(?u)\sかFindOnig=1
247: 2024/12/23(月)12:51 ID:hOdCdrxj(1/2) AAS
半年あったら正規表現覚えたほうが早いな、Meryクリスマス
248: 2024/12/23(月)12:59 ID:hOdCdrxj(2/2) AAS
I have a pen. I have an apple.
249: 2024/12/31(火)20:44 ID:Thw2Z7nN(1) AAS
(?<=This year)(?=Next year)
250: 01/04(土)18:21 ID:YsNNcli5(1) AAS
<title> を
\<title\> って書かないとエラーになるケースってあるの?
251: 01/04(土)19:03 ID:0KLOcGyc(1/3) AAS
GnuRegexとGrepでは\<と\>は特別な意味を持つ、それぞれ単語の先頭、単語の末尾にマッチする
だから<title>にマッチさせたいのではなくtitleにマッチさせたいのかも
\<と\>で囲えばbigtitleやtitleholderにはマッチしなくなる
252: 01/04(土)20:47 ID:a+K50MRq(1) AAS
Gnuって書いたらヌーになるがな
253(1): 01/04(土)21:43 ID:12P97q6K(1) AAS
メタ文字 \b が使えない環境ってことなんだろうか?
254: 01/04(土)21:56 ID:0KLOcGyc(2/3) AAS
うぐぅ
>>253 高須クリニック
255: 01/04(土)22:07 ID:0KLOcGyc(3/3) AAS
すまん、二刀流だった
外部リンク[html]:www.gnu.org
256: 04/05(土)13:05 ID:/X2GFnPw(1) AAS
GeminiにChatでやりたいこと入力したらずばりの正規表現回答してくれんのすごすぎて草
そんで最強のGrep検索・置換ツールのVScodeにその正規表現をコピペするだけの簡単なお仕事
マジで更新もされず陳腐化したクソ使い難い正規表現アプリやサービスがすべて駆逐されんの納得でクソワロタ
257: 04/05(土)14:35 ID:dD+UMa0w(1) AAS
VSCodeやのにCopilotつかわんのなんでなんw
置換はperl -i -peが手軽にコードも介在できて未だに最強
258: 04/05(土)17:01 ID:yzm+sG/V(1) AAS
文章でミジンコだとわかるだろほっといてやれ
259: 04/07(月)00:01 ID:HqNk85Dr(1) AAS
一方、ロシアは秀丸エディタを使った
260: 04/07(月)18:30 ID:+glSnyRi(1) AAS
米国がEmEditorを使うところから物語は始まるのか
261: 05/07(水)13:34 ID:VK/GbxYn(1) AAS
後方参照を初めて使ってみた
なるほど便利
後方を参照するのかと思っていたが後方で参照すると言う意味だった
262: 05/08(木)20:10 ID:a95yfZhU(1) AAS
ぎょぎょぎょ?参照うお
263: 05/08(木)20:37 ID:NyjQsc8w(1) AAS
ぎょえーー
264(1): 06/10(火)10:10 ID:JUI3rKzN(1) AAS
置換……指定した文字を置換します。
@AA@A@.TXTの"@"を"Q"に置換(場所の指定無し)
QAAQAQ.TXT - すべて置換される
@AA@A@.TXTの"@"を"Q"に置換(場所を指定)
前から1文字目 : QAA@A@.TXT - 前から1文字目のみ置換
前から4文字目 : @AAQA@.TXT - 前から4文字目のみ置換
後から1文字目 : @AA@AQ.TXT - 後から1文字目のみ置換
省4
265: 07/13(日)21:04 ID:Dpndt2SK(1/2) AAS
iOSです
このスレで訊いて良いのかわかりませんが
Instagramの画像はその投稿のURL、例えばこれ↓
外部リンク:www.instagram.com
の末尾に「media/?size=l&.jpg」を加えると投稿の一枚目の画像URLになります
↓
画像リンク[jpg]:www.instagram.com
省3
266: 07/13(日)21:12 ID:SOWPf8Mn(1) AAS
正規表現関係ねーw
267: 07/13(日)21:19 ID:Dpndt2SK(2/2) AAS
どこで訊いたら良いのかわからず、パソコン詳しい人が多そうなここで質問させて頂きました
268: 07/14(月)01:14 ID:KR/EmCR1(1) AAS
和んだ
269: 07/14(月)02:28 ID:yh4CMksV(1) AAS
PC詳しい人が多そうなスレでそういう質問を受け付けていると
馬鹿が多そうなスレに成り下がると気が付かないものかね
270: [mailto:sage] 07/25(金)05:51 ID:3r8TzWYu(1) AAS
>>264
sed の出番か?
271: 08/09(土)13:09 ID:AY2Xi2Yg(1) AAS
SNSやWeb検索もたいてい正規表現対応してるからプログラミング以外で活用できる場面が増えてなんか嬉しい
272: 08/14(木)17:46 ID:ll+c+ksk(1) AAS
そんなに対応してるのある?
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 1.198s*