URL에 주어진 문자열이 포함되어 있는지 확인하는 방법은 무엇입니까?
어떻게 이런 식으로 할 수 있습니까?
<script type="text/javascript">
$(document).ready(function () {
if(window.location.contains("franky")) // This doesn't work, any suggestions?
{
alert("your url contains the name franky");
}
});
</script>
indexOf
대신 href 속성을 추가하고 확인해야합니다.contains
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
if (window.location.href.indexOf("franky") > -1) {
alert("your url contains the name franky");
}
});
</script>
if (window.location.href.indexOf("franky") != -1)
할 것입니다. 또는 정규 표현식을 사용할 수 있습니다.
if (/franky/.test(window.location.href))
다음 indexOf
과 같이 사용 하십시오.
if(window.location.href.indexOf("franky") != -1){....}
href
그렇지 않으면 문자열을 추가하는 것에 주목하십시오 .
if(window.location.toString().indexOf("franky") != -1){....}
이렇게 :
<script type="text/javascript">
$(document).ready(function () {
if(window.location.href.indexOf("cart") > -1)
{
alert("your url contains the name franky");
}
});
</script>
window.location
String은 아니지만 toString()
메소드가 있습니다. 따라서 다음과 같이 할 수 있습니다.
(''+window.location).includes("franky")
또는
window.location.toString().includes("franky")
로부터 오래된 모질라 문서 :
위치 객체에는 현재 URL을 반환하는 toString 메소드가 있습니다. window.location에 문자열을 할당 할 수도 있습니다. 이것은 대부분의 경우 문자열 인 것처럼 window.location으로 작업 할 수 있음을 의미합니다. 예를 들어, String 메소드를 호출해야하는 경우 명시 적으로 toString을 호출해야합니다.
정규식 방법 :
var matches = !!location.href.match(/franky/); //a boolean value now
또는 간단한 문장으로 다음을 사용할 수 있습니다.
if (location.href.match(/franky/)) {
웹 사이트가 로컬로 실행 중인지 서버에서 실행 중인지 테스트하는 데 사용합니다.
location.href.match(/(192.168|localhost).*:1337/)
href 가 AND를 포함 하는지 192.168
또는 localhost
AND가 뒤에 오는지 점검합니다 :1337
.
보시다시피, 정규 표현식을 사용하면 조건이 조금 까다로울 때 다른 솔루션보다 장점이 있습니다.
document.URL
당신 URL
과
if(document.URL.indexOf("searchtext") != -1) {
//found
} else {
//nope
}
이것을 시도하십시오, 더 짧고 정확하게 작동합니다 window.location.href
:
if (document.URL.indexOf("franky") > -1) { ... }
또한 이전 URL을 확인하려는 경우 :
if (document.referrer.indexOf("franky") > -1) { ... }
더 쉽게
<script type="text/javascript">
$(document).ready(function () {
var url = window.location.href;
if(url.includes('franky')) //includes() method determines whether a string contains specified string.
{
alert("url contains franky");
}
});
</script>
이 시도:
<script type="text/javascript">
$(document).ready
(
function ()
{
var regExp = /franky/g;
var testString = "something.com/frankyssssddsdfjsdflk?franky";//Inyour case it would be window.location;
if(regExp.test(testString)) // This doesn't work, any suggestions.
{
alert("your url contains the name franky");
}
}
);
</script>
indexOf를 사용해보십시오
if (foo.indexOf("franky") >= 0)
{
...
}
검색을 시도 할 수도 있습니다 (정규 표현 식용).
if (foo.search("franky") >= 0)
{
...
}
나는을 만들고 그것을 boolean
논리적으로 사용하고 싶다 if
.
//kick unvalidated users to the login page
var onLoginPage = (window.location.href.indexOf("login") > -1);
if (!onLoginPage) {
console.log('redirected to login page');
window.location = "/login";
} else {
console.log('already on the login page');
}
Javascript에서 URL을 가져 오려면 Window.location.href를 사용하십시오. 브라우저의 현재 URL 위치를 알려주는 속성입니다. 속성을 다른 것으로 설정하면 페이지가 리디렉션됩니다.
if (window.location.href.indexOf('franky') > -1) {
alert("your url contains the name franky");
}
당신의 js 파일에 넣어
var url = window.location.href;
console.log(url);
console.log(~url.indexOf("#product-consulation"));
if (~url.indexOf("#product-consulation")) {
console.log('YES');
// $('html, body').animate({
// scrollTop: $('#header').offset().top - 80
// }, 1000);
} else {
console.log('NOPE');
}
정규 표현식은 단어 경계 \b
나 유사한 장치로 인해 많은 사람들에게 더 적합 합니다. 단어 경계는 어떤 때 발생 0-9
, a-z
, A-Z
, _
에있는 그면 다음 경기 때, 또는 라인 또는 문자열의 끝 또는 시작하기 영숫자 문자 커넥트.
if (location.href.match(/(?:\b|_)franky(?:\b|_)))
당신이 사용하는 경우 if(window.location.href.indexOf("sam")
, 당신을 위해 일치를 얻을 수 있습니다 flotsam
및 same
다른 단어들. tom
정규식없이 토마토와 내일 일치합니다.
대소 문자를 구분하는 것은을 제거하는 것만 큼 간단합니다 i
.
또한 다른 필터를 추가하는 것만 큼 쉽습니다
if (location.href.match(/(?:\b|_)(?:franky|bob|billy|john|steve)(?:\b|_)/i))
에 대해 이야기합시다 (?:\b|_)
. 정규식은 일반적으로 정의 _
A와 word character
이 단어가 발생하지 않도록 경계. 우리는 이것을 (?:\b|_)
다루기 위해 이것을 사용합니다 . 문자열을 찾 \b
거나 양쪽에서 확인하십시오 _
.
다른 언어는 다음과 같은 것을 사용해야 할 수도 있습니다
if (location.href.match(/([^\wxxx]|^)(?:franky|bob|billy|john|steve)([^\wxxx]|$)/i))
//where xxx is a character representation (range or literal) of your language's alphanumeric characters.
이 모든 것이 말하는 것보다 쉽습니다
var x = location.href // just used to shorten the code
x.indexOf("-sam-") || x.indexOf("-sam.") || x.indexOf(" sam,") || x.indexOf("/sam")...
// and other comparisons to see if the url ends with it
// more for other filters like frank and billy
다른 언어의 정규 표현식은 지원 \p{L}
하지만 자바 스크립트는 지원 하지 않으므로 외국어 문자를 쉽게 검색 할 수 있습니다. 같은 것[^\p{L}](filters|in|any|alphabet)[^\p{L}]
이 스크립트가 있다고 가정하십시오.
<div>
<p id="response"><p>
<script>
var query = document.location.href.substring(document.location.href.indexOf("?") + 1);
var text_input = query.split("&")[0].split("=")[1];
document.getElementById('response').innerHTML=text_input;
</script> </div>
그리고 URL 형식은 www.localhost.com/web_form_response.html?text_input=stack&over=flow
작성된 텍스트 <p id="response">
는stack
참고 URL : https://stackoverflow.com/questions/4597050/how-to-check-if-the-url-contains-a-given-string
'Programming' 카테고리의 다른 글
점과 선분 사이의 최단 거리 (0) | 2020.03.04 |
---|---|
잘못된 번들 오류- "런칭 스토리 보드 필요" (0) | 2020.03.04 |
Xcode 4에서 프로젝트 이름 바꾸기 (0) | 2020.03.04 |
글꼴 멋진 아이콘의 아이콘 색상, 크기 및 그림자 스타일을 지정하는 방법 (0) | 2020.03.04 |
C #에서 현재 실행 파일의 이름을 어떻게 얻습니까? (0) | 2020.03.04 |