長い式があり、すべての乗算記号' * '
を要素ごとの乗算記号に置き換える必要があり' .* '
ます。手作業で行うには時間がかかりすぎます。それを行う簡単な方法はありますか?
ありがとう
長い式があり、すべての乗算記号' * '
を要素ごとの乗算記号に置き換える必要があり' .* '
ます。手作業で行うには時間がかかりすぎます。それを行う簡単な方法はありますか?
ありがとう
プログラムで行うには、正規表現の置換を使用する必要があります。
>> str = 'x * y .* z';
>> regexprep(str, '\.?\*', '.*')
ans =
x .* y .* z
正規表現は、「0 または 1 ドット ( ) の後に乗算記号 ( ) が続く\.?\*
すべての文字列に一致する」ことを意味します。つまり、文字列andに一致し、両方を に置き換えます。\.?
\*
'.*'
'*'
'.*'
やりたいことは2点。
正規表現で置き換えます。すでにbeforeがある場合は、そのようregexprep('\.?*\*','.*')
に考慮されます。.
それを行う方法。プログラムsedはそれを行うのに最適です。しかし、Matlab でそれを行うこともできます - すべてのファイルをループしてテキストを置き換えます。
ファイルを再ハッシュするまで、matlab は変更を認識しないことに注意してください。つまり、置き換えられた機能をすぐに使用することはできません。