- 題名・名前・本文は必ず入力してください。
- 題名は、できれば具体的な本文内容がイメージできるものにしてください。
- スパムよけのため、本文中に句読点記号が含まれていない場合にはエラーとなります。 「,」「.」ではなく「、」「。」を使ってください。
- [バグ][要望][質問][済][未] の分類は管理人が後から勝手に付加しています。 書き込み時は意識する必要はありません。
[602] 特定の文字列を指定した範囲で抽出したいです
takeru [2021/01/13 17:49:16]
いつもお世話になっております。
説明が難しいのですが、例えば
あいうえお
特徴:~~
[BR]
かきくけこ
とある場合、「特徴:~~」内のみを抽出したいです。
「特徴」以前を削除&[BR]以降を削除みたい事は可能でしょうか?
宜しくお願いいたします。
Re: [602] 特定の文字列を指定した範囲で抽出したいです
あすかぜ [2021/01/13 18:46:24]
最新版の Cassava Editor であれば、正規表現検索で実現できそうです。
下記の手順を試してみてください。
1. [検索]-[検索・置換] メニューをクリックし、検索・置換ダイアログを開く
2. 「正規表現検索」にチェックする
3. 「検索する文字列」に「.*(特徴:.*)\[BR\].*」と入力する
4. 「置換後の文字列」に「$1」と入力する
5. 「すべて置換」ボタンをクリックする
正規表現検索では、検索する文字列中の「.*」が任意の文字列を表します。
また、「[」や「]」には特別な意味があるので、「[BR]」を検索するには「\」を加えて「\[BR\]」と記述する必要があります。
置換後の文字列の「$1」は、検索する文字列中の () で囲んだ部分にマッチした文字列となります。
マクロを使用する場合は「\」を 2 つ重ねて、
ReplaceAll(".*(特徴:.*)\\[BR\\].*", "$1", false, false, true);
のようになります。
よろしくお願いします。
Re: [602] 特定の文字列を指定した範囲で抽出したいです
takeru [2021/01/30 12:54:08]
ご返信ありがとうございます。
変更で申し訳ないのですが、
セル内にて、
特徴:あいうえお<BR>かきくけこ<BR>さしすせそ<BR>
とあったとして、
「特徴:~」1つ目の<BR>までの範囲抽出は可能でしょうか?
また、応用として、2つ目の<BR>までの範囲抽出も可能ですか?
宜しくお願いいたします。
Re: [602] 特定の文字列を指定した範囲で抽出したいです
あすかぜ [2021/01/30 16:38:53]
1つ目の<BR>までの範囲抽出は「.*(特徴:.*?)<BR>.*」
2つ目の<BR>までの範囲抽出は「.*(特徴:.*?<BR>.*?)<BR>.*」
(「置換後の文字列」はどちらも「$1」)
を試してみてください。
よろしくお願いします。