删除字符串中空格后的所有内容
我想删除字符串中空格后的所有内容。
例如:
"my string is sad"
应该返回
"my"
我一直在尝试找出如何使用 sub/gsub 来执行此操作,但到目前为止尚未成功。
I would like to remove everything after a space in a string.
For example:
"my string is sad"
should return
"my"
I've been trying to figure out how to do this using sub/gsub but have been unsuccessful so far.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
您可以使用正则表达式,例如
请参阅正则表达式演示。
在这里,
sub
将仅执行单个搜索和替换操作,.*
模式将查找第一个空格(因为正则表达式引擎从左到右搜索字符串)并且.*
匹配任何零个或多个字符(在 TRE 正则表达式风格中,甚至包括换行符,使用perl=TRUE
时要小心,否则情况并非如此)尽可能,直到字符串末端。一些变化:
请参阅在线 R 演示。
You may use a regex like
See the regex demo.
Here,
sub
will only perform a single search and replace operation, the.*
pattern will find the first space (since the regex engine is searching strings from left to right) and.*
matches any zero or more characters (in TRE regex flavor, even including line break chars, beware when usingperl=TRUE
, then it is not the case) as many as possible, up to the string end.Some variations:
See the online R demo.
或者,将第一个空格后面的所有内容替换为空:
并且用数字:
or, substitute everything behind the first space to nothing:
And with numbers:
Stringr 是你的朋友。
Stringr is your friend.
如果你想用正则表达式来做到这一点:
If you want to do it with a regex: