我data.frame在其中一列中有一个字符数据.我想data.frame在同一列中过滤多个选项.有没有一种简单的方法可以做到这一点,我错过了?
示例:
data.frame name =dat
days name
88 Lynn
11 Tom
2 Chris
5 Lisa
22 Kyla
1 Tom
222 Lynn
2 Lynn
Run Code Online (Sandbox Code Playgroud)
我想过滤一下Tom,Lynn例如.
当我做:
target <- c("Tom", "Lynn")
filt <- filter(dat, name == target)
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
longer object length is not a multiple of shorter object length
Run Code Online (Sandbox Code Playgroud) 我试图创建一个正则表达式,使一个字符串只包含0-9作为字符,它必须至少1个字符长度,不超过45.所以例子将是00303039匹配,而039330a29不是.
到目前为止,这是我所拥有的,但我不确定它是否正确
[0-9]{1,45}
Run Code Online (Sandbox Code Playgroud)
我也试过了
^[0-9]{45}*$
Run Code Online (Sandbox Code Playgroud)
但这似乎也不起作用.我对正则表达式不太熟悉,所以任何帮助都会很棒.谢谢!
我有一个带有字符列的data.table,并且只想选择那些包含子字符串的行.相当于SQLWHERE x LIKE '%substring%'
例如
> Months = data.table(Name = month.name, Number = 1:12)
> Months["mb" %in% Name]
Empty data.table (0 rows) of 2 cols: Name,Number
Run Code Online (Sandbox Code Playgroud)
我如何只选择Name包含"mb"的行?
我有几个IP地址,如:
115.42.150.37115.42.150.38115.42.150.50如果我想搜索所有3个ip地址,我应该写什么类型的正则表达式?例如,如果我这样做115.42.150.*(我将能够搜索所有3个IP地址)
我现在能做的就是:/[0-9]{1-3}\.[0-9]{1-3}\.[0-9]{1-3}\.[0-9]{1-3}/但似乎效果不好.
谢谢.
如果在一串文本中至少找到一次特定的匹配文本,我需要创建一个条件,例如:
str = "This is some text containing the word tiger."
if string.match(str, "tiger") then
print ("The word tiger was found.")
else
print ("The word tiger was not found.")
Run Code Online (Sandbox Code Playgroud)
如何检查文本是否在字符串中的某处找到?
我想使用curl来查看页面的来源,如果该源包含与该字符串匹配的单词,那么它将执行打印.我该怎么办if $string contains?
在VB中它就像.
dim string1 as string = "1"
If string1.contains("1") Then
Code here...
End If
Run Code Online (Sandbox Code Playgroud)
类似的东西,但在Perl中.
我有一套话说 - 苹果,橘子,梨,香蕉,猕猴桃
我想检查一个句子是否包含上面列出的任何单词,如果是,我想找到匹配的单词.我怎样才能在Regex中实现这一目标?
我目前正在为每组单词调用String.indexOf().我假设这不像正则表达式匹配那么有效吗?
我正在寻找一个需要2个字符串的算法,它会给我一个"相似因子".
基本上,我将有一个可能拼写错误,输入字母等的输入,我必须在我可能的值列表中找到最接近的匹配项.
这不适用于在数据库中搜索.我将有一个500个左右的字符串匹配的内存列表,全部在30个字符以下,所以它可能相对较慢.
我知道这存在,我以前见过,但我不记得它的名字.
编辑:感谢指出Levenshtein和汉明.现在,我应该实施哪一个?它们基本上测量不同的东西,两者都可以用于我想要的东西,但我不确定哪一个更合适.
我已经阅读了算法,汉明似乎显然更快.既然都不会检测到两个被转置的角色(即乔丹和乔丹),我相信这将是一个常见的错误,这对我想要的更准确?有人可以告诉我一些关于权衡的事吗?
我希望正则表达式只接受阿拉伯字符,空格和数字.
数字不需要是阿拉伯语.
我找到了以下表达式:
^[\u0621-\u064A]+$
Run Code Online (Sandbox Code Playgroud)
我只需要阿拉伯字符,我需要阿拉伯字符,空格和数字.
string-matching ×10
regex ×5
string ×4
r ×2
algorithm ×1
conditional ×1
data.table ×1
dplyr ×1
java ×1
javascript ×1
lua ×1
perl ×1
unicode ×1