私はカオスの後置子を含む名前を変更するファイルが非常に多いです。私はいくつかの高度なリネームソフトウェアを使用しており、後置を削除するRegExを書く方法を知りました。いくつかの例があります:残りの文字列がRegExの最初のBを含む最後のAを見つけるには?
大文字のダッシュやスペースを含むすべてのポストフィックスを出力から削除します。希望の出力は:
Content - Still content
Content
Content-Still --Content
Content fake pOst
Content fake
Content fake pOst fix (space is not a splitter of pOstfix, so nothing removed)
これは正規表現で可能かどうかわかりません。
スペースの有無にかかわらず不確定な数字はポストフィックスのスプリッタですが、コンテンツまたはポストフィックスにはダッシュやフィックスが含まれていますが、すべてのポストフィックスには特定の文字が含まれていますこの例では、文字O
またはpOst
)。
いくつかのポイントがあります。
- は、コンテンツとpostfixの間のスプリッタは唯一のスペースがあれば、それはスプリッタではない、唯一のダッシュ(ES)です。
- ダッシュとスペースはコンテンツとポストフィックスの両方に含まれる可能性があるので、最初の/最後のダッシュをスプリッタとして検索することはできません。先頭のスペースを含む最後のダッシュです。 s)が見つかりました(最後の例を参照)。
- 私は徐々に後置を削除するのではなく、1つのRegEx式を書く方法を見つけたいと思っています。
- ファイル名全体が非ASCII文字、特に
certain letter(s)
を持つことがあります。したがって、[a-zA-Z]
のようなものを使用することは理想的ではありません。
PS:私はまたAを含むがBは含まない文字クラスをどうやって作るのだろうか?
たとえば、すべての英数字が必要ですが、文字aと数字5は除外されます(明らかに機能しません):/[\w^a5]+/
。 /[b-zA-Z0-46-9]/
のような網羅的なリストを書くことは別として、もっと良い方法はありますか?組合や交差点のような?
私は心からお礼を申し上げます。どうもありがとう。
正規表現それ自体では*文字列(の一部)*と一致します。この "高度な名前変更ソフトウェア"の正確な能力は、正規表現のマッチを他のコンテンツに置き換えることができますか?グループをキャプチャすることはできますか?どのような正規表現の実装はそれを使用しますか?リンクする(ドキュメント)、または少なくともソフトウェアの名前を付けることが役に立ちます。 – Bergi
@Bergiありがとうございます。私は、PC上のAdvanced RenamerとMacのBetter Finder Renameの両方を使用しています。グループをキャプチャするとどういう意味ですか? RegExの実装はどういう意味ですか? RegExはありますか?申し訳ありませんが、私はRegExを学んでいるので、あまり知らないので、私はRegExで自分のスキルを向上させようとしているので、仕事の選択肢を見いだすことはありません。再度、感謝します。 –
あなたはhttp://www.advancedrenamer.com/user_guide/regular_expresionsを読んでいますか?もしそうでなければ、あなたは本当にすべきです。それはまた、私が探していた情報を正確に含んでいます。 – Bergi