पहली अभिव्यक्ति जिस तरह से आप यह प्रयोग कर रहे हैं में अमान्य है के बराबर है, इसलिए *
विशेष वर्ण है। यदि आप विशेष वर्णों के साथ sub
या gsub
का उपयोग करना चाहते हैं, तो आप fixed = TRUE
पैरामीटर सेट का उपयोग कर सकते हैं।
यह स्ट्रिंग को पैटर्न के रूप में खोजने के लिए लेता है और किसी विशेष वर्ण को अनदेखा करता है।
R
दस्तावेज में Pattern Matching and Replacement
देखें। \\s|*
\s whitespace (\n, \r, \t, \f, and " ")
| OR
:
x <- 'Aug 2013****'
gsub('*', '', x, fixed=TRUE)
#[1] "Aug 2013"
आपकी दूसरी अभिव्यक्ति बस अपना पहला अभिव्यक्ति की व्याख्या के रूप में जहाँ तक *
के लिए एक चरित्र वर्ग []
उपयोग कर रहा है के रूप में ही भागने से बचने के लिए, ..
x <- 'Aug 2013*'
gsub('\\s|\\*', '', x)
#[1] "Aug2013"
और दूसरी अभिव्यक्ति: \\s|[*]
\s whitespace (\n, \r, \t, \f, and " ")
| OR
[*] any character of: '*'
'*' रेगेक्स में एक विशेष चरित्र है, इसलिए '[] 'चरित्र की शाब्दिक व्याख्या को मजबूर करता है। – joran