私のURLに文字列の後にJS正規表現を使用してすべてを削除しようとしています。たとえば、www.myurl/one/two/three/?a=b&c=d
"three /"という文字列の後にすべてをドロップします。これにマッチする正規表現をどのように書くのでしょうか?Javascript Regex - 文字列の後ろにすべて一致する
答えて
これは簡単な方法です。
var str = 'www.myurl/one/two/three/?a=b&c=d'
var newStr = str.replace(/(.*\/three\/).*/, '$1')
alert(newStr)
、このいずれかを試してみてください:
文字列と配列の方法にfunction getPathFromUrl(url) {
return url.split("?")[0];
}
var url = 'www.myurl/one/two/three/?a=b&c=d';
var result = getPathFromUrl(url);
alert(result);
彼は3つ後にすべてを落としたいと言った。このようにしても、彼は結果を得ることができます。 –
3つ後、パラメータ値が返される関数に渡すことができるパラメータがあれば、それを返します。 –
ありがとうございます。私はもう一度編集しました。私は彼が3つ後にクエリ文字列を望むと思った。再び私は彼の質問を読んだ後、編集された答えを読んだ。 –
またはbasicaly:
var string = "www.myurl/one/two/three/?a=b&c=d";
var array = string.split('/');
array.pop();
var result = array.join("/");
console.log(result); //www.myurl/one/two/three
'three'の後にスラッシュがない場合、これは失敗します。これは完全に有効なURL形式です。 –
だから、あなたは '[?\ /]'で分割したいかもしれません。 –
@torazaburoであり、URLにクエリ文字列_and_がない場合は失敗します。 – vlaz
組み込みのURL操作機能を使用します。
var a = document.createElement('a');
a.href = "http://www.myurl/one/two/three/?a=b&c=d";
a.search = '';
console.log(a.href);
注
a
要素のsearch
プロパティが疑問符で始まる部分を指します。http://
が必要です。それ以外の場合、URLは現在のURLとの相対的なものとして解釈されます。あなたは正規表現を使用することを好む場合、あなたはすべて疑問符で始まる消すことができ
:
"www.myurl/one/two/three/?a=b&c=d".replace(/\?.*/, '')
それとも、あなたは、このようなすべてのものとして、維持したい何一致する可能性をまで疑問符、使用して:
"www.myurl/one/two/three/?a=b&c=d".match(/.*(?=\?)/)[0]
をあなたはそのもみ[0]
match
以来の戻り配列を、必要としますt要素は完全一致です。ここで?=
はルックアヘッドです。あなたは、具体的three/
まで一致させたい場合は実際には、
"www.myurl/one/two/three/?a=b&c=d".match(/[^?]+/)[0]
と同じかです:
"www.myurl/one/two/three/?a=b&c=d".match(/.*three\//)[0]
- 1. JavaScript regexは文字列内のすべての一致を取得します
- 2. regex - パターンに一致しないすべての文字列を見つける
- 3. Regex Javascript最初の2文字で文字列を一致させる
- 4. 文字列の最後に一致するRegexが必要です
- 5. PERLフィールド内の文字列に一致するRegexのヘルプ
- 6. REGEX:文字列の先頭に一致する。
- 7. Python Regex一致する文字
- 8. Javascriptの部分文字列に一致し、それの後に
- 9. MySQL削除文字列とその文字列の後ろのすべて
- 10. 文字列間のすべての(+)記号に一致する
- 11. Regex:先行する小文字の文字と一致する
- 12. python regex:空白文字または文字列の末尾に一致する
- 13. 小文字の後ろにSublime regexをスペースに変更する
- 14. 一致する文字の後ろに数字が続く正規表現
- 15. Python regexは、前の部分文字列の一致後に部分文字列を取得します。
- 16. python regex一致する文字列を見つける
- 17. 一致する文字列
- 18. 一致文字列
- 19. Javascript Regexp - 特定のフレーズの後に一致する文字
- 20. パンダ:文字列一致後の列の次の値を取得
- 21. jQueryの文字列一致構文の問題RegEx
- 22. sed文字の後ろにあるすべての文字を置換する
- 23. RegEx - 一致前の文字でない
- 24. 一致する文字列
- 25. 一致する文字列
- 26. 一致する文字列
- 27. Codeigniter route regex - 'admin'以外の文字列に一致
- 28. セミコロンの最後の一致に一致するRegEx
- 29. RegEx複数の文字列を一致させる
- 30. RegExで未知の部分文字列を一致させる
あなたは正規表現を使用しTO_ _haveますか?文字列内のその単語の位置を見つけてそこで切り詰めるのは簡単な仕事です。 – vlaz
str.split( 'three /')[0] + 'three /'; –
"three"の後のすべてを削除するか、クエリパラメータを削除しますか? –