我想避免使用Java在字符串中出现"`"和"〜"符号.
例如:
String:hi everyo`ne
输出:无效
字符串:嗨ev~eryone
输出:无效
字符串:大家好
输出:有效
字符串:hi ev`eryon~e
输出:无效
可以检测字符串中重复单词的方法是什么?
例如"这是重复测试的测试消息"包含一个重复的单词测试.
这里,目标是检测String中出现的所有重复单词.
使用正则表达式对于实现目标是优选的.
我有一个要求,在包含字段的请求中,我的其余web服务进入.
在我的web服务中,我必须检查此字段,如果验证通过,则我将请求发送给第三方服务.
验证要求:
message_from字段包含email addressas string.我必须检查domain name(之后的所有内容@)是否是roin.com
例如:abc@roin.com传球,john_mandoza@roin.com传球,john_manodza@google.com失败......
我可以使用模式匹配器或其他任何方法进行此验证吗?
我已经使用字符串解析来捕获所有内容(@),然后equalsIgnoreCase进行比较roin.com
这种字符串解析方法有效,但还有更好的方法吗?
这是在Windows上 - 我如何在perl中使用".zip"结束所有文件?
这是当前代码,并且出于此问题的目的,不可更改 - 所有可以更改的是$ pattern变量的值.
my @arr = map { glob( $_ ) } $pattern;
Run Code Online (Sandbox Code Playgroud)
另外一个问题,这段代码中map函数的用途是什么?它有效,但我不明白.
嗨,我想尝试匹配模式的字符串
这是可能的字符串
signal CS, NS, dl: stateType := writeOrRead0;
signal CS, pS : stateType := writeOrRead0;
signal dS : stateType := writeOrRead0;
Run Code Online (Sandbox Code Playgroud)
我只关心第一个结肠的模式.
但是定义的信号数量可以多于一个它可能是三个或四个,即使这是我的正则表达式
^signal\\s*(\\w+),*\\s*(\\w+)\\s*:
Run Code Online (Sandbox Code Playgroud)
它将拾取第二个两个信号,但是对于第二个信号,它会选择CS和pS,但是当我使用它时,下一个信号中的d和S
matcher.group()
Run Code Online (Sandbox Code Playgroud)
分开来
任何人都可以给我一个表达式,它将获取所有信号名称是否有一个两个或三个以上?
可能重复:
如何在Scala中禁止"匹配并非详尽!"警告
object Euler extends App {
val Max = 4000000
def p2: Int = p2(0 :: 1 :: Nil).filter(_ % 2 == 0).sum
def p2(list: List[Int]): List[Int] = {
list match {
case n1 :: n2 :: tail => if (Max < n1) n2 :: tail
else p2(n1 + n2 :: list)
// case _ => 0 :: 0 :: Nil // "match is not exhaustive"
}
}
println(p2)
}
Run Code Online (Sandbox Code Playgroud)
有人可能会给我一个例子,说明如何在没有第二种情况下使我的代码片段可编辑吗?
在Scala玩游戏时,我遇到了一些我认为应该可行的事情,但我不知道该怎么办.
我正在返回一个由给定的最小值/最大值限制的值.使用if-else语句,函数将如下所示:
def set(n: Int, min: Int, max: Int): Int =
{
if (n < min) return min
if (n > max) return max
return n
}
Run Code Online (Sandbox Code Playgroud)
我想知道是否可以通过模式匹配来实现(优雅).我尝试了以下,但它在语法上是不正确的:
def set(n: Int, min: Int, max: Int): Int = n match
{
case (n < min) => min
case (n > max) => max
case _ => n
}
Run Code Online (Sandbox Code Playgroud)
我认为有一种方法可以通过混合case和if语句来实现,但是当我完成它时,我可能只是使用标准的if/else链.是否有正确的语法来做我正在尝试的事情?
如果块不相互嵌套或自身嵌套,我如何在以下语句中匹配多行块:
if (EXPR) BLOCK
if (EXPR) BLOCK else BLOCK
if (EXPR) BLOCK elsif (EXPR) BLOCK ... else BLOCK
unless (EXPR) BLOCK
unless (EXPR) BLOCK else BLOCK
unless (EXPR) BLOCK elsif (EXPR) BLOCK ... else BLOCK
LABEL while (EXPR) BLOCK
LABEL while (EXPR) BLOCK continue BLOCK
LABEL until (EXPR) BLOCK
LABEL until (EXPR) BLOCK continue BLOCK
LABEL for (EXPR; EXPR; EXPR) BLOCK
LABEL foreach VAR (LIST) BLOCK
LABEL foreach VAR (LIST) BLOCK continue BLOCK
LABEL BLOCK continue BLOCK
Run Code Online (Sandbox Code Playgroud)
如果使用正则表达式无法做到这一点,是否有一个状态机能够这样做?
我有一个包含很多日期的数据框(数据).我希望从1970年之前删掉所有东西.我可以创建一个1970年以前的索引列表:
tmp <- which(data$data < '1970-01-01')
[1] 13446 102876 141199
Run Code Online (Sandbox Code Playgroud)
我想创建一个删除这三行的新表.就像是:
data.after.1970 <- data[!tmp, ]
Run Code Online (Sandbox Code Playgroud)
我知道我可以在 1970年之后创建一个所有事件的向量,并与之匹配:
tmp <- which(data$data > '1970-01-01')
data.after.1970 <- data[tmp, ]
Run Code Online (Sandbox Code Playgroud)
但我想知道我会用什么语法来排除项目.
UPDATE
我终于做到了这一点:
tmp <- which(data$data > as.Date('1970-01-01'))
data.after.1970 <- data[tmp, ]
Run Code Online (Sandbox Code Playgroud)
仔细看看它.which(data$data < as.Date('1970-01-01'))得到三个结果,但nrow(data) - nrow(data.after.1970)显示我丢了45行.summary(datae$date)清除了:
summary(data$date)
Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
"1933-07-01" "1989-01-25" "1992-07-09" "1992-05-03" "1996-06-10" "2006-09-14" "42"
Run Code Online (Sandbox Code Playgroud)
由于我的目标是获得第二个数据集,所以如果我排除那些日期不好的数据,我可以比较我的结果,我实际上也希望删除那些带有NA值的数据.
我仍然想知道我将使用什么语法来排除一些数字向量而不是包含它.
我有以下函数,假设返回卡的值.我不确定Num => Num为什么会出现以下错误:
错误:规则类型不一致,早期规则排名 - >此规则排名 - > int->排名
为什么Num => Num的返回类型为rank-> int-> rank
datatype suit = Clubs | Diamonds | Hearts | Spades
datatype rank = Jack | Queen | King | Ace | Num of int
type card = suit * rank
fun card_value (suit, rank)=
case rank of
Ace =>11
| Jack =>10
| King =>10
| Queen =>10
| Num => Num ;
card_value(Clubs,Ace); //calling function
Run Code Online (Sandbox Code Playgroud) pattern-matching ×10
regex ×5
java ×4
string ×3
perl ×2
scala ×2
duplicates ×1
glob ×1
javascript ×1
k ×1
parsing ×1
r ×1
sml ×1
smlnj ×1
syntax ×1