jquery에서 부분 문자열을 만드는 방법


115

클라이언트 측에서 jquery를 사용하여 "nameGorge"를 하위 문자열로 만들고 "name"을 제거하여 "Gorge"만 출력하도록하려면 어떻게해야합니까?

var name = "nameGorge"; //output Gorge

15
jQuery는 JavaScript로 작성된 라이브러리입니다. 자바 스크립트 위에 사용됩니다. 당신이 요청하는 것은 jQuery 라이브러리를 전혀 사용하지 않고도 JavaScript에서 수행 할 수 있습니다.
— Jeff

1
jQuery는 JavaScript입니다 (정확히 JavaScript 라이브러리이지만 그럼에도 불구하고 JavaScript). 즉, jQuery를 사용하여 하위 문자열을 얻는 것이 이미 직선적 인 JavaScript에서보다 더 쉽게 작성 될 수 있다고 생각하지 않습니다.
— VoidKing

답변:


235

jQuery가 필요하지 않습니다! 하위 문자열 방법을 사용하십시오.

var gorge = name.substring(4);

또는 제거하려는 텍스트가 정적이 아닌 경우 :

var name = 'nameGorge';
var toRemove = 'name';
var gorge = name.replace(toRemove,'');

5
죄송합니다. 잠든 후 이렇게 심하게 터질 줄은 몰랐습니다. 나는 여기를 약간 청소했습니다. 한편 누군가는 이것을
— BoltClock

안녕하세요 BoltClock : 어떻게 지내세요? 나는 여기에서 요점을 증명하려고 노력했습니다. 대단히 감사합니다. 그래서 그것은 내가 클라이언트를 위해 코드를 수정하려고 할 때 답변을 찾고 여기에 오면 op의 표시된 답변이 그에게 만족 스러움을 의미합니다. . 그런 다음 나는 단순히 같은 질문을 게시하거나 내 문제의 예를 제공 할 수 없습니다 .. 매우 흥미 롭습니다 .. 그래서 내 질문은 내가 jQuery 함수를 실행하고 내부에서 .split을 사용하는 경우이 사람들이 어떻게 그렇게 확신하는지와 같았습니다. 네이티브 JS 방식 또는 일종의 터널링 또는 프록시를 참조하여 jQuery를 통해 트리거합니다. 또한 질문을 읽으면.
— Jean Paul AKA el_vete 2013 년

내 요점은 나에게 jQuery 네임 스페이스 내에서 작업하고 있다는 것입니다 .JS에서 직접 string.split을 호출하는 경우에는별로 신경 쓰지 않지만 대신 커뮤니티에서 정확한 질문을 게시하면 이해했습니다. 이 응답은 내 어딘가에 jQuery.split 문서 참조가 있다는 사실보다 더 많이 받아 들여지기 때문에 적어도 내 코드와 모든 jQuery에 충돌을주지 않고 거기에 있기 때문에 있어야한다고 말해줍니다. 플러그인 삭제 된 사진에 당신은 감사 ... 그래서 볼 수 있었다 다시 한 번
— 장 폴 AKA el_vete

5
@JeanPaul-jQuery에는 split ()이 없습니다. 우리는 이미 이것을 끝냈습니다. 이전에 링크 한 두 기사 모두 text ()를 사용하여 바닐라 JavaScript 문자열을 얻은 다음 string.split ()을 호출했습니다. 이 경우 당신은 분명히 틀 렸습니다. 그거 떨어 뜨려.
— 저스틴 니스 너

52

사용 .split(). (두 번째 버전은 .slice()및 .join()어레이를 사용합니다.)

var result = name.split('name')[1];
var result = name.split('name').slice( 1 ).join(''); // May be a little safer

사용 .replace().

var result = name.replace('name','');

사용 .slice() 문자열에.

var result = name.slice( 4 );

jquery는 바꾸기를 지원하지 않습니다. 이것은 Vanilla js입니다
— Jude


9

그것은 단순한 자바 스크립트입니다 : see substringand substr.


1
또는 실제로 slice(). Strange JS는 똑같은 말을하는 여러 가지 방법을 가지고 있어야합니다. 배열에서 slice()일관되게 작동 slice()하고 끝에서 인덱스에 대해 음의 시작 및 끝 인덱스를 허용 하므로 선호하는 방법 입니다.
— bobince

@bobince : 사실, 나는 어떤 기억하지 못할 substring와 substr길이 매개 변수를 사용하고 종료 인덱스를 걸립니다 - 나는 항상 찾기 위해 문서를 찾아 볼 필요가있다.
— casablanca

4

이를 위해 jquery가 필요하지 않습니다.

var placeHolder="name";
var res=name.substr(name.indexOf(placeHolder) + placeHolder.length);

클라이언트 측에서해야하고 이미 jquery가 있습니다. 그럼 당신은 무엇을 제안하고 있습니까? 간단한 질문에 대해 죄송하지만 js 및 jquery를 사용하는 초보자입니다.
— Gorge

indexOf ( "name")가 0을 반환하기 때문에이 문은 "nameGorge"를 반환합니다.
— Justin Niessner

2
var name = "nameGorge";
name.match(/[A-Z].*/)[0]

0

예, 가능하지만 jQuery 라이브러리가 아닌 Javascript의 고유 기능에 의존합니다.

http://www.w3schools.com/jsref/jsref_substr.aspsubstr 함수를 사용하면 문자열의 특정 부분을 추출 할 수 있습니다.

이제 추출 할 문자열 부분을 찾는 데 사용할 특정 문자열이나 문자를 찾고 있다면 indexOf 함수도 사용할 수 있습니다. http://www.w3schools.com/jsref/jsref_IndexOf.asp

하지만 질문은 다소 모호합니다. '이름'으로 텍스트 를 링크 해도 원하는 결과를 얻을 수 있습니다. 하위 문자열을 얻는 기준은 정확히 무엇입니까?


1
strposJavaScript에 대한 질문에서 PHP의 기능에 연결 한 이유는 무엇 입니까?
— casablanca

당신 말이 맞습니다. 오늘은 PHP가 너무 많습니다. 적절한 JS로 편집했습니다. 잡아 주셔서 감사합니다.
— aaronofleonard 2010

-1

다음은 어떻습니까?

<script charset='utf-8' type='text/javascript'>
  jQuery(function($) { var a=$; a.noConflict();
    //assumming that you are using an input text 
    //  element with the text "nameGorge"
    var itext_target = a("input[type='text']:contains('nameGorge')");
    //gives the second part of the split which is 'Gorge'
    itext_target.html().split("nameGorge")[1];
    ...
  });
</script>
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.