모 르 는 자 바스 크 립 트 문자열 처리 라 이브 러 리 5 개(소결)

대소 문자 변환 처리,알파벳 기호 삭제,유 니 코드 처리,URL 처리 등.
문자열 을 사용 하 는 것 은 여러 가지 사례 가 있 기 때문에 번 거 로 운 작업 일 수 있 습 니 다.예 를 들 어 문자열 을 낙타 봉 대소 문자 로 바 꾸 는 간단 한 작업 은 몇 줄 의 코드 가 있어 야 최종 목 표를 달성 할 수 있 습 니 다.

function camelize(str) {
 return str.replace(/(?:^\w|[A-Z]|\b\w|\s+)/g, function(match, index) {
  if (+match === 0) return ""; // or if (/\s+/.test(match)) for white spaces
  return index === 0 ? match.toLowerCase() : match.toUpperCase();
 });
}
위의 코드 세 션 은 StackOverflow 에서 가장 많이 투표 한 답 입 니 다.그러나 이것 도 문자열 이-foo-bar-인 상황 을 해결 하지 못 했다.

이것 은 문자열 처리 라 이브 러 리 가 구 할 수 있 는 곳 입 니 다.복잡 한 문자열 작업 을 쉽게 하고 주어진 문제 의 모든 가능 한 사례 를 고려 할 수 있 습 니 다.이것 은 당신 에 게 도움 이 됩 니 다.왜냐하면 당신 은 하나의 방법 만 사용 하면 효과 적 인 해결 방안 을 얻 을 수 있 기 때 문 입 니 다.
자바 스 크 립 트 의 문자열 처리 라 이브 러 리 를 보 여 줍 니 다.
1. String.js
string.js 또는 S 라 고 약칭 하 는 경량급 JavaScript 라 이브 러 리(압축 후 5kb 이하)로 브 라 우 저 나 추가 String 방법 을 제공 하 는 Node.js 입 니 다.
설치 하 다.

npm i string
주의 할 만 한 방법
between(left,right)―좌우 문자열 사이 의 문자열 을 추출 합 니 다.HTML 의 두 탭 사이 에서 요 소 를 가 져 오 려 고 시도 할 때 이 방법 을 사용 할 수 있 습 니 다.

var S = require('string');
S('<a>This is a link</a>').between('<a>', '</a>').s 
// 'This is a link'
camelize()―밑줄 이나 접 힌 번 호 를 모두 삭제 하고 문자열 을 낙타 봉 식 대문자 로 변환 합 니 다.이 기능 은 본문 에서 처음에 언급 한 문 제 를 해결 하 는 데 쓸 수 있다.

var S = require('string');
S('---Foo---bAr---').camelize().s; 
//'fooBar'
humanize()―입력 을 인성 화 된 형식 으로 전환한다.이 기능 은 처음부터 실현 되 기 시작 하면 틀림없이 상당히 많은 코드 가 필요 할 것 이다.

var S = require('string');
S('  capitalize dash-CamelCase_underscore trim ').humanize().s 
//'Capitalize dash camel case underscore trim'
stripPunctuation()―주어진 문자열 의 모든 문장 부 호 를 제거 합 니 다.만약 네가 처음부터 이 기능 을 실현 한다 면 문장 부 호 를 놓 칠 가능성 이 높다.

var S = require('string');
S('My, st[ring] *full* of %punct)').stripPunctuation().s; 
//My string full of punct
너 는 이곳 에서 더 많은 방법 을 볼 수 있다.
2. Voca

Voca 는 문자열 을 처리 하 는 자 바스 크 립 트 라 이브 러 리 입 니 다.Voca 라 이브 러 리 는 대소 문자 변경,수식,채 우기,탄 화,라틴 화,sprintfy,절단,전의 등 유용 한 함 수 를 제공 합 니 다.모듈 화 디자인 은 응용 프로그램 구축 을 최소 화하 기 위해 전체 라 이브 러 리 나 단일 함 수 를 불 러 올 수 있 습 니 다.이 라 이브 러 리 는 이미 전면적 인 테스트 를 거 쳐 조사 할 만 한 근거 가 있 고 장기 적 인 지 지 를 받 았 다.
설치 하 다.

npm i voca
주의 할 만 한 방법
Camel Case(String data)―데 이 터 를 낙타 봉 형식 으로 변환 합 니 다.

var v = require('voca');
v.camelCase('foo Bar');
// => 'fooBar'

v.camelCase('FooBar');
// => 'fooBar'

v.camelCase('---Foo---bAr---');
// => 'fooBar'

Latinise(String data)―변음 기 호 를 삭제 함으로써 데 이 터 를 라틴 화 처리 합 니 다.

var v = require('voca');
v.latinise('cafe\u0301'); // or 'café'
// => 'cafe'

v.latinise('août décembre');
// => 'aout decembre'

v.latinise('как прекрасен этот мир');
// => 'kak prekrasen etot mir'

isAlphaDigit(String data)―데이터 가 알파벳 과 숫자 문자 만 포함 되 어 있 는 지 확인 합 니 다.(알파벳 숫자

var v = require('voca');
v.isAlphaDigit('year2020');
// => true

v.isAlphaDigit('1448');
// => true

v.isAlphaDigit('40-20');
// => false

CountWords(String data)―데이터 의 단어 수 를 계산 합 니 다.

var v = require('voca');
v.countWords('gravity can cross dimensions');
// => 4

v.countWords('GravityCanCrossDimensions');
// => 4

v.countWords('Gravity - can cross dimensions!');
// => 4

EscapeRegExp(String data)―데이터 에 있 는 정규 표현 식 특수 문자-[]/{}()*+?

var v = require('voca');
v.escapeRegExp('(hours)[minutes]{seconds}');
// => '\(hours\)\[minutes\]\{seconds\}'
너 는 이곳 에서 더 많은 정 보 를 볼 수 있다.
3. Anchorme.js

이것 은 마이크로 빠 른 자바 script 라 이브 러 리 로 텍스트 의 링크/URL/이메일 을 검사 하고 클릭 가능 한 HTML 닻 링크 로 변환 할 수 있 습 니 다.
  • 의 민감 도가 높 고 오보 율 이 가장 낮다.
  • 은 완전한 IANA 목록 에 따라 URL 과 이메일 을 검증 합 니 다.
  • 인증 포트 번호(있 으 면).
  • IP 8 비트 바이트 번호 검증(존재 할 경우).
  • 은 비 라틴 문자 URL 에 적용 된다.
  • 설치 하 다.
    
    npm i anchorme
    쓰다
    
    import anchorme from "anchorme"; 
    //   
    // var anchorme = require("anchorme").default;
    const input = "some text with a link.com"; 
    const resultA = anchorme(input);
    //some text with a <a href="http://link.com" rel="external nofollow" >link.com</a>
    
    너 는 추가 확장 을 통 해 맞 춤 형 기능 을 추가 할 수 있다.
    너 는 이곳 에서 더 많은 정 보 를 볼 수 있다.
    4. Underscore.string

    Underscore.string 은 JavaScript 의 문자열 작업 확장 으로 Underscore.js 와 함께 사용 하거나 사용 하지 않 을 수 있 습 니 다.Underscore.string 은 자 바스 크 립 트 라 이브 러 리 로 문자열 을 편안하게 처리 할 수 있 습 니 다.Prototype.js,Right.js,Underscore 이 계발 한 Underscore.js 확장 입 니 다.
    Underscore.string 은 대문자,제거,계수,escapeHTML,unescapeHTML,삽입,맞 춤 법,starts With,ends With,제목 화,편집,절단 등 몇 가지 유용 한 기능 을 제공 합 니 다.
    설치 하 다.
    
    npm install underscore.string
    
    주의 할 만 한 방법
    numberFormat(number)―포맷 숫자.소수점 과 순서 로 구 분 된 문자열 로 숫자 를 포맷 합 니 다.
    
    var _ = require("underscore.string");
    _.numberFormat(1000, 3)
    => "1,000.000"
    _.numberFormat(123456789.123, 5, '.', ',');
    => "123,456,789.12300"
    
    chop(string,step)―주어진 문자열 을 작은 조각 으로 자 릅 니 다.
    
    var _ = require("underscore.string");
    _.chop('whitespace', 3);
    => ['whi','tes','pac','e']
    
    너 는 이곳 에서 더 많은 정 보 를 볼 수 있다.
    5. Stringz
    이 라 이브 러 리 의 주요 하 이 라 이 트 는 유 니 코드 를 지원 하 는 것 이다.다음 코드 를 실행 하면 출력 은 2 입 니 다.
    
    "🤔".length
    // -> 2
    
    문자열 의 코드 셀 수 대신 String.length()가 문자열 의 코드 셀 수 를 되 돌려 주기 때 문 입 니 다.
    자 바스 크 립 트 유 니 코드 문제 에 대한 더 많은 정 보 를 이곳 에서 읽 을 수 있 습 니 다.
    설치 하 다.
    
    npm install stringz
    주의 할 만 한 방법
    limit(string,limit,padString,padPosition)―문자열 을 주어진 너비 로 제한 합 니 다.
    
    const stringz = require('stringz');
    // Truncate:
    stringz.limit('Life's like a box of chocolates.', 20); 
    // "Life's like a box of"
    
    // Pad:
    stringz.limit('Everybody loves emojis!', 26, '💩'); 
    // "Everybody loves emojis!💩💩💩"
    stringz.limit('What are you looking at?', 30, '+', 'left'); 
    // "++++++What are you looking at?"
    
    // Unicode Aware:
    stringz.limit('🤔🤔🤔', 2); 
    // "🤔🤔"
    stringz.limit('👍🏽👍🏽', 4, '👍🏽'); 
    // "👍🏽👍🏽👍🏽👍🏽"
    toArray(string)―문자열 을 배열 로 변환 합 니 다.
    
    const stringz = require('stringz');
    stringz.toArray('abc');
    // ['a','b','c']
    //Unicode aware
    stringz.toArray('👍🏽🍆🌮');
    // ['👍🏽', '🍆', '🌮']
    
    Stringz 에 대한 더 많은 정 보 를 알 고 싶 으 시 면 이곳 에서 Github 를 방문 하 십시오.
    출처:blog.bitsrc.io,저자:Mahdhi Rezvi,번역:전단 외국어 정선
    모 르 는 자바 스 크 립 트 문자열 처리 라 이브 러 리(소결)5 개 에 대한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 자바 스 크 립 트 문자열 처리 라 이브 러 리 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 지원 을 바 랍 니 다!

    좋은 웹페이지 즐겨찾기