Skip to content

Latest commit

 

History

History
178 lines (137 loc) · 6.64 KB

README-ko.md

File metadata and controls

178 lines (137 loc) · 6.64 KB

PySwiftyRegex

Cocoapods Compatible License Carthage Compatible Platform Twitter

Swift에서 정규표현식을 Python처럼 쉽게 다뤄보세요.

English 简体中文 日本語

굉장히 쉽습니다

import PySwiftyRegex

if let m = re.search("[Tt]his is (.*?)easy", "I think this is really easy!!!") {
	m.group()  // "this is really easy"
	m.group(1) // "really "
}

아래에서 더 많은 예제를 볼 수 있습니다.

요구사항

  • iOS 7.0+ / Mac OS X 10.9+
  • Xcode 8.0+

Swift 2.3의 경우 버전 0.3.0를 이용해주십시오.

설치하기

임베드된 프레임워크를 사용하려면 iOS 8 또는 OS X Mavericks 이상을 지원해야 합니다.

PySwiftyRegex을 iOS 7 타겟 프로젝트에서 사용하려면 CocoaSeeds를 사용하거나 혹은 PySwiftyRegex.swift 파일을 다운받아 프로젝트에 직접 포함시켜야 합니다.

CocoaPods (iOS 8+, OS X 10.9+)

CocoaPods를 사용해서 PySwiftyRegex를 쉽게 설치할 수 있습니다. 다음과 같은 내용의 Podfile을 만들어주세요.

platform :ios, '8.0'
use_frameworks!

target 'MyApp' do
	pod 'PySwiftyRegex', '~> 1.0.0'
end

그리고 쉘에서 아래 명령어를 실행하면 설치됩니다.

$ pod install

Carthage (iOS 8+, OS X 10.9+)

Cartfile 또는 Cartfile.private에 아래 라인을 추가합니다.

github "cezheng/PySwiftyRegex" ~> 1.0.0

그리고 쉘에서 다음 명령어를 실행합니다.

$ carthage update

Carthage가 생성한 PySwiftyRegex.framework를 Xcode 프로젝트의 'General' 설정 아래의 'Embedded Binaries'에 추가합니다.

CocoaSeeds (iOS 7+)

CocoaSeeds를 사용하면 Swift로 작성된 라이브러리를 iOS 7 프로젝트에서 사용할 수 있습니다.

먼저, Seedfile을 생성합니다.

target :MyApp do
  github 'cezheng/PySwiftyRegex', '1.0.0', :files => 'PySwiftyRegex/PySwiftyRegex.swift'
end

그리고 다음과 같은 쉘 명령어를 실행합니다.

$ seed install

PySwiftyRegex.swift 파일이 Xcode 프로젝트에 자동으로 포함된 것을 볼 수 있습니다. 즐코딩!

사용 가능한 re 모듈

Python의 re 모듈에 익숙하다면 사용하는데 어려움이 없을 것입니다. 처음이거나 익숙하지 않은 경우, 아래 항목들을 보고 Python에서 정규표현식을 다루는 방식이 NSRegularExpression보다 어떻게 더 좋은지 확인해보세요.

더 많은 예제

재사용을 위해 RegexObject 객체 컴파일하기

let regex = re.compile("this(.+)that")

문자열 첫 부분부터 패턴 매칭하기

if let m = regex.match("this one is different from that") {
	m.group()  //"this one is different from that"
	m.group(1) //" one is different from "
}

패턴 검색하기 (가장 먼저 매칭되는 패턴)

if let m = regex.search("I want this one, not that one") {
	m.group()  //"this one, not that one"
	m.group(1) //" one, not "
}

매칭되는 모든 패턴 검색하기

regex.findall("this or that, this and that") // ["this or that", "this and that"]

모든 매칭 결과 가져오기

for m in regex.finditer("this or that, this and that") {
	m.group()  // 1st time: "this or that", 2nd time: "this and that"
	m.group(1) // 1st time: " or ", 2nd time: " and "
}

정규식으로 문자열 자르기

let regex = re.compile("[\\+\\-\\*/]")

// By default, will split at all occurrences of the pattern
regex.split("1+2-3*4/5")    // ["1", "2", "3", "4", "5"]

// Setting a maxsplit = 2
regex.split("1+2-3*4/5", 2) // ["1", "2", "3*4/5"]

패턴 치환하기

let regex = re.compile("[Yy]ou")

// Replacing all occurrences (2 times in this example)
regex.sub("u", "You guys go grap your food")     // "u guys go grap ur food"
regex.subn("u", "You guys go grap your food")    // ("u guys go grap ur food", 2)

// Setting maximum replace count = 1 (1 times in this example)
regex.sub("u", "You guys go grap your food", 1)  // "u guys go grap your food"
regex.subn("u", "You guys go grap your food", 1) // ("u guys go grap your food", 1)

라이센스

PySwiftyRegex는 MIT 라이센스 하에 배포됩니다. 자세한 내용은 LICENSE 파일을 참고하세요.