[過去ログ]
Regular Expression(正規表現) Part16 (1002レス)
Regular Expression(正規表現) Part16 http://mevius.5ch.net/test/read.cgi/tech/1635936601/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
504: デフォルトの名無しさん [sage] 2022/09/04(日) 09:08:03.10 ID:MIQciAoV >>503 それだと92000の200にもマッチしてしまうよ インド数字等を気にしないなら[0-9]は[\d]でもOK (?<![0-9])(?:200|[1][0-9]{2}|[1-9][0-9]|[0-9])(?![0-9]) http://mevius.5ch.net/test/read.cgi/tech/1635936601/504
505: デフォルトの名無しさん [] 2022/09/04(日) 09:46:10.78 ID:ZQZ632xa >>503 [0-9]{1,3} これだと結果でるようだけどそのサイトm値省略不可なのでは 他に | のorも説明ないようなのでダメとか 正規表現文法どこまで対応してるかは動かす環境次第なので質問テンプレートにも入力項目になってんだけど >>1 http://mevius.5ch.net/test/read.cgi/tech/1635936601/505
506: デフォルトの名無しさん [sage] 2022/09/04(日) 10:07:01.01 ID:qlj2b1lm すまない ●Regular Expressionの使用環境 iPhone,a-shellというアプリ ●検索か置換か? 検索 ●説明 フォルダ内にある写真を圧縮するため ●対象データ 1から200などのjpegとかの画像 ●希望する結果 検索してそれをまとめて圧縮 http://mevius.5ch.net/test/read.cgi/tech/1635936601/506
507: デフォルトの名無しさん [sage] 2022/09/04(日) 10:19:49.12 ID:NNtN3+VI まあ案件次第だけど > 200までの数字だとどうしたらいいですか? とかなら\d+で取得してアプリケーション側で弾くのが後の保守を含めて簡単かと思う http://mevius.5ch.net/test/read.cgi/tech/1635936601/507
508: デフォルトの名無しさん [sage] 2022/09/13(火) 19:48:53.80 ID:aae9uQ50 スルーされにくい質問のテンプレと例 ●Regular Expressionの使用環境 PowerShell7.2 ●検索か置換か? 置換 ●説明 文中(先頭及び文末以外)の0が連続して3つ以上並ぶ部分をハイフン(-)に置換したい ●対象データ 123000444 000123000 1230000000444 ●希望する結果 123-444 000123000 123-444 よろしくお願いいたします。 http://mevius.5ch.net/test/read.cgi/tech/1635936601/508
509: デフォルトの名無しさん [sage] 2022/09/13(火) 20:02:34.86 ID:BFM47HY2 (?<!^)000+(?!$) - http://mevius.5ch.net/test/read.cgi/tech/1635936601/509
510: デフォルトの名無しさん [sage] 2022/09/13(火) 20:23:28.22 ID:el3nukes 00000 → 0-0 ? http://mevius.5ch.net/test/read.cgi/tech/1635936601/510
511: デフォルトの名無しさん [sage] 2022/09/13(火) 20:37:38.14 ID:G28B9gdh ああ、 00001200030000 を 0-12-3-0 とするのか (>>509のやつ) 先頭末尾に繋がっている0は無視したい 000012-30000 のか例からだと不明だね http://mevius.5ch.net/test/read.cgi/tech/1635936601/511
512: デフォルトの名無しさん [sage] 2022/09/13(火) 21:45:26.67 ID:aae9uQ50 508です。 早くもいろいろご回答いただきありがとうございます。 そしてすみません、みなさまのリプを見て自分の考えが足りなかったことに気付きました… 変換は一度だけ、先頭から数えてもっとも近いもののみです。 正しく書き直します、すみません。 スルーされにくい質問のテンプレと例 ●Regular Expressionの使用環境 PowerShell7.2 ●検索か置換か? 置換 ●説明 文中(先頭及び文末以外)の0が連続して3つ以上並ぶ部分をハイフン(-)に置換したい (先頭から
数えて最初の一致のみ) ●対象データ 123000444 000123000 1230000000444 12000045600006 ●希望する結果 123-444 000123000 123-444 12-45600006 よろしくお願いいたします。 http://mevius.5ch.net/test/read.cgi/tech/1635936601/512
513: デフォルトの名無しさん [sage] 2022/09/13(火) 22:09:54.11 ID:jeF3JQfM >>511 > 先頭末尾に繋がっている0は無視したい こんな条件どこから出てきたんだ? http://mevius.5ch.net/test/read.cgi/tech/1635936601/513
514: デフォルトの名無しさん [sage] 2022/09/13(火) 22:20:12.97 ID:GLLSFlxd 「文中(先頭及び文末以外)の0」が連続して3つ以上並ぶ部分 文中(先頭及び文末以外)の「0が連続して3つ以上並ぶ部分」 http://mevius.5ch.net/test/read.cgi/tech/1635936601/514
515: デフォルトの名無しさん [sage] 2022/09/13(火) 22:24:49.17 ID:clq+OpKM ^([1-9]+)0+(\d+)$ --> $1-$2 でいかがでしょう http://mevius.5ch.net/test/read.cgi/tech/1635936601/515
516: デフォルトの名無しさん [sage] 2022/09/13(火) 22:33:07.80 ID:clq+OpKM あ、「ゼロ3つ以上」を満たしてなかった また考えますー http://mevius.5ch.net/test/read.cgi/tech/1635936601/516
517: デフォルトの名無しさん [sage] 2022/09/13(火) 22:35:39.26 ID:clq+OpKM ^([1-9]+)0{3,}(\d+)$ --> $1-$2 でしょーか http://mevius.5ch.net/test/read.cgi/tech/1635936601/517
518: デフォルトの名無しさん [sage] 2022/09/13(火) 22:46:39.11 ID:7uE/UK4/ 010001 http://mevius.5ch.net/test/read.cgi/tech/1635936601/518
519: デフォルトの名無しさん [sage] 2022/09/13(火) 23:08:19.66 ID:G28B9gdh >>513 > 文中(先頭及び文末以外)の0が の説明と例からだと 「先頭以外」が先頭の0、1文字を指すのか 先頭から続く0の塊を指すのか不明でしょ > 3つ以上並ぶ部分 が強欲なのか?欲張りでいいのか?が不明 >>511 さんの質問だね http://mevius.5ch.net/test/read.cgi/tech/1635936601/519
520: デフォルトの名無しさん [sage] 2022/09/13(火) 23:09:06.59 ID:G28B9gdh >>519 訂正、>>510さんの質問 http://mevius.5ch.net/test/read.cgi/tech/1635936601/520
521: デフォルトの名無しさん [sage] 2022/09/13(火) 23:10:13.89 ID:aae9uQ50 みなさんありがとうございます! できそうな正規表現がありうれしいです。 すみませんが今手元に環境がないため明日動作させて確認します。 http://mevius.5ch.net/test/read.cgi/tech/1635936601/521
522: デフォルトの名無しさん [sage] 2022/09/13(火) 23:20:09.73 ID:aae9uQ50 そして自分でも要件を言葉にできておらず申し訳ありません みなさんに質問いただいて初めて気付きましたが、 先頭及び末尾が0であった場合、そこから連続する0は除外する ができると一番望ましいです。 00001200034000 ↓ 000012-34000 となります。 返信遅くなりすみません。 http://mevius.5ch.net/test/read.cgi/tech/1635936601/522
523: デフォルトの名無しさん [sage] 2022/09/13(火) 23:44:59.39 ID:G28B9gdh (?<!^)(?>0{3,})(?!$) 未test 最初のマッチだけ置換は以下 https://social.technet.microsoft.com/Forums/ja-JP/ad0f7263-3fd1-4545-b554-e796d27ef948/263682102112398125101248312481?forum=powershellja http://mevius.5ch.net/test/read.cgi/tech/1635936601/523
524: デフォルトの名無しさん [sage] 2022/09/14(水) 00:51:16.34 ID:4SNfctPQ >>518 あかんすね… ^(0*)((0{0,2}[1-9])+)0{3,}([1-9]\d*)$ --> $1$2-$4 これはどーでしょう? http://mevius.5ch.net/test/read.cgi/tech/1635936601/524
525: デフォルトの名無しさん [sage] 2022/09/14(水) 05:23:58.73 ID:E5sTi1VY ([1-9])0000*([1-9][0-9]*) $1-$2 http://mevius.5ch.net/test/read.cgi/tech/1635936601/525
526: デフォルトの名無しさん [sage] 2022/09/14(水) 09:12:22.80 ID:Kn3Wl+2J (?<=[1-9])(?>000+)(?!$)(.+)$ -$1 http://mevius.5ch.net/test/read.cgi/tech/1635936601/526
527: デフォルトの名無しさん [sage] 2022/09/14(水) 09:38:59.41 ID:s0UMl1ds (^[^0].*?)0{3,}([^0].*?$) $1-$2 http://mevius.5ch.net/test/read.cgi/tech/1635936601/527
528: デフォルトの名無しさん [sage] 2022/09/14(水) 10:42:18.62 ID:6Qq1IObP ○ >>524,525,526 ✕ >>523,527 http://mevius.5ch.net/test/read.cgi/tech/1635936601/528
529: デフォルトの名無しさん [sage] 2022/09/14(水) 19:22:12.74 ID:+0SwTq6N 508です。 沢山の案ありがとうございました、本当に助かりました。 一通り試して正しく動くものは沢山あったのですが、 以下の方式で解決させていただきました。 $reg=[regex]'([1-9])0000*([1-9][0-9]*)' $reg.Replace($str,'$1-$2',1) また、上記の案以外もこんな解決方法があるのかととても勉強になりました。 そして自分が要件をまとめられてなかったことにも反省いたしました。 今後はこちらで回答する側になれるよう、再度勉強いたします。 重ね重ね本当にあり
がとうございました。 http://mevius.5ch.net/test/read.cgi/tech/1635936601/529
530: デフォルトの名無しさん [sage] 2022/09/14(水) 19:57:00.91 ID:b2aEm1i9 回答にある正規表現は置換回数を指定できない置換方法でも大丈夫 置換回数に1を指定する方法でやるなら単に ([1-9])0000*([1-9]) でもいい http://mevius.5ch.net/test/read.cgi/tech/1635936601/530
531: デフォルトの名無しさん [sage] 2022/09/14(水) 22:22:31.78 ID:+0SwTq6N >530 確かに、教えていただいたこともりもりにしてしまいましたが わざわざ[1-9]のあとに[0-9]を入れている意味がないですね…。 ご指摘ありがとうございます。 http://mevius.5ch.net/test/read.cgi/tech/1635936601/531
532: デフォルトの名無しさん [] 2022/09/18(日) 12:56:41.18 ID:QaJ1iFM2 githubで結構探したんですがそれっぽいのが見つからず、お力お貸しください。 ●Regular Expressionの使用環境 AutoHotKey1.1系 ●検索か置換か? 置換 ●説明 2つのクォーテーションマークに囲まれたパスのうち、1つ目(app.exe)を削除したい。 囲まれたパス同士は半角スペースで接続される。 ●対象データ "D:\Dir_Path\_app.exe" "D:\Dir_Path\_script.ahk" ^^^^^^^^^^^^^^^^^^^^^^^ ●希望する結果 "D:\Dir_Path\_script.ahk" ht
tp://mevius.5ch.net/test/read.cgi/tech/1635936601/532
533: デフォルトの名無しさん [sage] 2022/09/18(日) 16:16:05.56 ID:wjpqonb4 >>532 https://regex101.com/r/zxuEpo/1 http://mevius.5ch.net/test/read.cgi/tech/1635936601/533
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 469 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.029s