在R中,我有一个包含数字的字符向量,例如:
a <- c("1", "1.5", "-2", "3-4.5", "-1", "5-7.5", "3")
我想在包含范围的值中替换短划线(&#34; - &#34;)(&#34; 3-4.5&#34;和&#34; 5-7.5&#34 ;)对另一个角色,说&#34; $&#34;。
所以最后我想要:
a <- c("1", "1.5", "-2", "3$4.5", "-1", "5$7.5", "3")
我该如何做到这一点?
我想通过短划线拆分包含范围的值,但这样做也会分割出不是我想要的负数。
谢谢。
答案 0 :(得分:2)
这是一种方法:
a <- c("1", "1.5", "-2", "3$4.5", "-1", "5$7.5", "3")
gsub("([^-]+)(-)(.+)", "\\1$\\3", a)
## [1] "1" "1.5" "-2" "3$4.5" "-1" "5$7.5" "3"
答案 1 :(得分:0)
我们也可以使用正则表达式外观
@implementation MySingleton
static MySingleton* _sharedMySingleton = nil;
+(MySingleton*)sharedMySingleton
{
@synchronized([MySingleton class])
{
if (!_sharedMySingleton)
[[self alloc] init];
return _sharedMySingleton;
}
return nil;
}