第一个时期和空白之间的正则表达式直到下一个时期

时间:2017-12-17 21:34:48

标签: ruby-on-rails regex

我知道这应该比我做的更容易。对不起,如果这是一个简单的问题。

我正在为我的Rails应用程序使用正则表达式(正则表达式是否根据语言进行更改?)我想采用这样的短语:"我不熟悉RegExp。希望SO会帮助我在这里。这是第三句,不应包括在内。"让RegExp回归"希望SO能帮到我这里" (开头没有句号和空格,最后没有句号)

这是我到目前为止所尝试的内容:

^([^(.)\s]+)

([^\.\s]+)

((\.\s))

\.\s+\K.+

我真的不知道该怎么做。再次感谢您的帮助!

3 个答案:

答案 0 :(得分:1)

这应该有效。它将第二句捕获为“希望SO能帮助我在这里”。

\.\s*([\w\s]*)\.

答案 1 :(得分:1)

感谢您的评论使我能够解决这个问题。最终的解决方案最终得到以下结论:

\A[^.]*\.\s\K[^.]*(?=\.)

翻译:

\A声明字符串

的开头

[^.]*说你可以拥有尽可能多的字符或空格(只要它们在第一个时期之前)

\.\s找到第一个句点和空格

然后

\K包含表达式

之后的所有内容

[^.]*包括每个字符或空格,直到第一个句号

(?=\.)表示在开始后的第一个句点之后停止(标记为\ K)

再次感谢您的帮助!

答案 2 :(得分:1)

You may use

<h3>Your BorkCoins: <span id="bork-coins"></h3>

<img src="https://i.pinimg.com/736x/ef/6a/cf/ef6acfc481b76637b71d4a71db7de82a--dog-birthday-animal-memes.jpg"
    height="80" width="80" id="bork-coins" onclick="earnBork();">
    
      <p>Click on Gabe the Doggo to earn a BorkCoin!</p>
      
       <h3>Shop</h3>
       
       <p>Dank Miner <i>(2 BorkCoins/sec)</i>
    <br>Your Dank Miner(s): <span id="dankMiner"></span></p>
  <button id="dank-miner" onclick="buydankMiner1();">Buy 1 (20 BorkCoins)</button>

See the Ruby demo, output: s[/\.\s+([^.]+)\./, 1] .

Here, the Hopefully SO will help me out here syntax means you want to apply the [/regex/, 1] to the regex string and only output the contents of Group 1. Thus, you do not really need a \K match reset operator, but surely you may use

s

that will yield the same result.