해당 문자열에는 백 슬래시가 없습니다. 표시된 백 슬래시는 이스케이프 마커입니다. "특별 상황"의 입력 및 표시에 대한이 기능과 기타 기능은 ?Quotes
도움말 페이지에 설명되어 있습니다. 제거에 대해서는 하나의 정규식 대신 타원형 접근법을 사용했습니다. 여기에 \ff
이 최초의 "문자"이기 때문에 실제로 성공 일부만 .... 다른 방법의 커플과는 R 문자로 정말 법적 아니다 : 나는 정규식 이유를 생각
s <- "\xff$GPGGA"
strsplit(s, "")
#[[1]]
#[1] NA
Warning message:
In strsplit(s, "") : input string 1 is invalid in this locale
substr(s, 1,1)
#Error in substr(s, 1, 1) : invalid multibyte string at '<ff>$GP<47>GA'
gsub('.*([^A-Za-z].*)', '\\1',"\xff$GPGGA")#[1]
#[1] "$GPGGA"
?Quotes
gsub('\xff', '',"\xff$GPGGA")#[1]
#[1] "$GPGGA"
함수는 그 문자열에서 질식하지 않는다. 정규식은 실제로 시스템 중재 된 프로세스이다. 반면에 strsplit
과 substr
은 내부 R 함수이다.
@RichardScriven은 예제를 게시하고 복제하려고 시도했지만 표시되는 문자에 대한 매핑이 시스템마다 다름을 보여주는 또 다른 예제를 얻습니다. 나는 OSX 10.10.1 (요세미티)>에있어
cat('\xff')
ˇ
는 (나는 octothorpe (#) 내가 정상적으로에서와 있음을 떠났다.)
아마도'GSUB를 ('. * ([^ -Za-z]. *) ','\\ 1 ','\ xff $ GPGGA ') # [1] "$ GPGGA"\ – akrun
감사합니다. 이와 같은 방법으로 문자를 지정하는 추가 예제가있는 설명서는 무엇입니까? – Stu
테스트 할 수 있도록 원래 데이터 세트의 예제, 패턴을 제공하십시오. – akrun