No.5ベストアンサー
- 回答日時:
再びNo1です。
> 実は私の場合、「<任意の文字列>」という<>で囲まれた文字列を置換対象から除く必要があります。
そういうことなら、力技で回避可能です…と言うか、そうするしか方法がないと思います。
1)<一浪>を<一:浪>に置換
2)一浪を二浪に置換
3)一:浪を一浪に置換
正規表現も考えたのですが、検索はできても置換はうまくいきそうにないです。検索だけなら、次の式で概ね問題ないはずですが。
[^<]一浪[^>]
これは、<以外の1文字・一浪・>以外の1文字であるという式です。ただこれで置換を行うと、一浪の前後の1文字まで置換対象になってしまうため、うまくいきません。
No.4
- 回答日時:
>ハイライトされているということは何かしらその文字についてマークがついているわけで、
それは確かにそうですけれども、プログラム(秀丸)内部での話です。
そのハイライト表示した文字列ににアクセスできるようなインターフェースを持っていない限りご希望のような操作はできないでしょう。
秀丸マクロを使えばもう少し細かいことができる可能性はありますけど、マクロヘルプを見た限りそのような機能はなさそうです。
#1の方の仰るように力技で確認しながら進めるか
#2の方の仰るようなやり方をもう少し工夫して正規表現で処理するかぐらいではないですか?
No.3
- 回答日時:
No1です。
> 一番スマートに解決するには、「ハイライト強調表示がされた文字列は置換対象から
> 除外する」という処理だと思っているのですが、ご存じないでしょうか?
では逆に質問しますが、その「ハイライト強調表示をどうやって行うのですか?人手だったら、都度確認して置換と同じことでしょう?これではちっともスマートではありませんが」
置換したくない例外が数個に対して、置換したいものは数十個ある…といったことなら、その例外だけをあらかじめ異なる単語に手で書き換えておき、置換処理後に元に戻すくらいしかやりようがないと思いますよ。
ハイライト強調表示は検索でつけることができます。
実は私の場合、「<任意の文字列>」という<>で囲まれた文字列を置換対象から除く必要があります。
<>ではさまれた任意の文字列については検索で一挙にハイライト強調表示させられます。
あとはこの部分が置換対象から除ければ万々歳なのですが、、、、
ハイライトされているということは何かしらその文字についてマークがついているわけで、その変数というのかなんというのかを引き数にマクロで置換対象外にできそうな気がするのですが、、、
お知恵をお願いいたします。
No.2
- 回答日時:
秀丸エディタというわけではなく、一般的なアプリでの置換での話ですが、やはり名前の「一浪」と動作の「一浪」というように、まったく同じキーワードは機械には区別できないでしょうから、前後の文字を含む完全一致型のキーワード検索(あいまい検索にしない)でキーワードを探し、置換するのが間違いが少ないかと思います(これでも、100%と言い切るのは無理だと思いますが)。
名前だったら、「一浪が」「一浪は」「一浪の」「一浪へ」… と けっこう助詞も多いと思いますが、動作の場合は、「一浪する」「一浪した」と、サ行だけですみそうです。
よく出てきそうな、「一浪し」「一浪す」を「二浪し」「二浪す」に置換する、というような、前後の文字を含めた置換を繰り返すしかないと思います。
あとは、置換後に、再度一浪を検索して、チェックしていくしかないですね。
No.1
- 回答日時:
置換を実行する前に、「置換の前に確認」チェックをオンにしておけば済む話では?
あまりにも対象が多量にあって、いちいち確認なんてやってられない場合は、置換文字列の与え方を工夫するしかないでしょう。「一浪」→「二浪」ではなく、「一浪が一浪」→「一浪が二浪」などのように。
ご回答ありがとうございます。
お察しのとおり、変換対象が大量にあり、いちいち確認をやっていられない状況にあります、
例文が悪かったと思うのですが、置換対象はもっと変則的なものになります。
一番スマートに解決するには、「ハイライト強調表示がされた文字列は置換対象から除外する」という処理だと思っているのですが、ご存じないでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 特定の文字を簡単な操作で半角スペースに変換するか削除したい 2 2022/11/01 10:35
- その他(プログラミング・Web制作) テキストエディタで複数行にわたる文字列の行頭に番号を振る方法 4 2023/03/11 12:57
- Visual Basic(VBA) EXCEL VBA 単語置き換え について質問です ブック名 ぶぶぶ シート名 ししし セル V3〜 3 2023/03/08 01:41
- Visual Basic(VBA) Excel VBA 教えてください。 VBA初心者です。 詳しい方がいましたら教えてください。 下記 3 2023/04/25 11:22
- その他(IT・Webサービス) 少し複雑なテキスト置換がしたいです。 2 2022/10/13 14:42
- その他(コンピューター・テクノロジー) 正規表現の置換で一部の文字列をそのまま残したい 2 2022/05/03 19:19
- 大学・短大 進路についての相談です。 今後の進路について、考えている進路が3つあります ①日本大学生産工学部数理 2 2023/03/13 14:09
- フリーソフト サクラエディタの正規表現(grep機能)の使い方 3 2022/06/22 10:29
- JavaScript javascriptで文字挿入でtoggleみたいなのはありますか? 2 2023/02/14 21:53
- Visual Basic(VBA) Excel VBAでAA(BBB) → BBB.AA に置換したい 2 2022/10/30 13:59
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
カンマを改行に変換する方法
-
エクセル重複削除で綺麗に削除...
-
エクセルで濁点カナの変換方法...
-
[Access2000] Replace関数がない?
-
文字列に含まれているダブルク...
-
ダブルクォーテーションカンマ...
-
Wordの置換機能について
-
セルの文字列後ろのスペース削除
-
ワード (word ) 日本語の文字...
-
Excelで全角ハイフンを半角ハイ...
-
Excel : テキストボックス中の...
-
エクセルの『検索と置換ボック...
-
Wordでスペースを含む文字を置...
-
ワード文書の行間スペースを一...
-
Word2010特定の名前を置き換え...
-
ある文字列を置換対象から除外...
-
word 改行マークを印刷時に表示...
-
秀丸で余分なスペースを削除したい
-
ワードで複数の文字を一括・連...
-
エクセルの「置換」で1行の部分...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
カンマを改行に変換する方法
-
カンマ( , )をタブに置換したい。
-
Excelで全角ハイフンを半角ハイ...
-
エクセルの『検索と置換ボック...
-
文字の列を揃えるには
-
秀丸で余分なスペースを削除したい
-
文字列に含まれているダブルク...
-
エクセルで濁点カナの変換方法...
-
ワードで複数の文字を一括・連...
-
Excelで特定の文字以下を削除し...
-
エクセル重複削除で綺麗に削除...
-
複数のスペースを1つのタブに...
-
Word:差し込み印刷時に文字列...
-
エクセル 置換又は関数でかっこ...
-
【MS Office Word 2007】文章の...
-
セルの文字列後ろのスペース削除
-
Excel : テキストボックス中の...
-
ExcelのVBA 正規表現でタブを...
-
1文字だけ置換したい
-
エクセルVBAでワードの文字を検...
おすすめ情報