2013-03-05 2 views
-1

:단지 대체하는 방법 지정된 문자는 예를 들어

specified_character = "你好啊" 
str_to_replace1 = "你好啊朋友" 
str_to_replace2 = "你好啊" 

나는 정규식 단지 전체 specified_character 일치하도록합니다. str_to_replace2 만 일치합니다. 내가 현재 가지고 :

/(?<=[^\p{Han}])#{specified_character}(?=[^\p{Han}])/ 

결과 :

str_to_replace1 = "你好啊朋友" 
str_to_replace2 = "new text" 
+0

어떤 정규식을 사용 하느냐에 따라 다르지만, 게시하는 것이 좋습니다. –

+0

@HunterMcMillen 업데이트 – goofansu

+0

예상 결과가 무엇인지 보여줄 수 있습니까? – oldergod

답변

1

당신은 (^) 시작하는 앵커를 추가 할 필요가 최종

pattern = /^Apple$/ 
'Apple'.gsub(pattern, 'Orange') # => 'Orange' 
'Apple Pie'.gsub(pattern, 'Orange') # => 'Apple Pie' 
0

것은 당신이 있는지 확인하려면 ($) 문자열이 패턴과 같으면 정규 표현식을 사용해서는 안됩니다. 그냥 문자열 비교 ==을 사용하십시오.

specified_character = "你好啊" 
str_to_replace1 = "你好啊朋友" 
str_to_replace2 = "你好啊" 

str_to_replace1 == specified_character # => false 
str_to_replace2 == specified_character # => true