次の文字列があります。
/v/dkdkd-akdoa?
交換したいdkdkd-akdoaです。
私の置換方法は次のようになります
string.replace("v\/(.+)\?", "replace")
しかし、それはまた置き換えv/ます。のみを置き換えるにはどうすればよいdkdkd-akdoaですか?
次の文字列があります。
/v/dkdkd-akdoa?
交換したいdkdkd-akdoaです。
私の置換方法は次のようになります
string.replace("v\/(.+)\?", "replace")
しかし、それはまた置き換えv/ます。のみを置き換えるにはどうすればよいdkdkd-akdoaですか?
次のコードを試してください:
> '/v/dkdkd-akdoa?'.replace(/(v\/).+\?/, '$1replace')
"/v/replace"
保持したい場合?:
> '/v/dkdkd-akdoa?'.replace(/(v\/).+(?=\?)/, '$1replace')
"/v/replace?"
$1最初のグループを参照 ( (v\/))
非常に単純に
string.replace(/v\/.+\?/, "v/replace");
最初の部分がわからない場合は、キャプチャして置き換えることができます。
string.replace(/(v\/).+\?/, "$1replace");
v/2 番目の例では、が一定であるため、明らかに既知です。あなたは潜在的にそれを次のようなものに置き換えるでしょう/^(.*?/).+\?/