尝试使用正则表达式来捕捉一些词语时,我遇到了问题。
Regexr链接:http://regexr.com/3gfr4
我使用spark2-shell --conf "spark.default.parallelism=40" --executor.memory 8g --driver-memory 32g --conf "spark.ui.port=4404" --conf spark.driver.maxResultSize=2048m --conf spark.executor.heartbeatInterval=200s
来捕捉菜单,消息,关闭,设置。它工作正常。但就像上面的图片一样,它会在\b(menu|mes|close|set)\b
中捕获menu
。从.@menu
开始,我不需要抓住这个词。
我尝试将正则表达式更改为@
。但工作不正确。
任何人都知道如何解决这个问题,谢谢!
答案 0 :(得分:0)
1)用周围的空格改变你的字符串:
$str = " $str ";
2)将正则表达式更改为:
\s(menu|mes|close|set)\s
答案 1 :(得分:0)
如果您只希望单词用空格包围,或者在字符串的开头或结尾处包含:
<Style x:Key="Clicky" TargetType="Button">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<StackPanel Orientation="Horizontal">
<Grid Height="74" Width="284" Background="{TemplateBinding Background}"/>
<TextBlock Text="{TemplateBinding Content}" TextAlignment="Center" VerticalAlignment="Center"/>
</StackPanel>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Cursor" Value="Hand" />
<Setter Property="Button.Opacity" Value="10" />
</Trigger>
</Style.Triggers>
</Style>
答案 2 :(得分:0)