我想在整行上找到上面有空白行的字符串,但是在下一行中有文字。然后我希望找到的字符串是大写的。我永远不会知道这些名字。 (我在Google Apps Script
)这样做。
示例文字:
susan jones
Good morning, children. How are you today?
Susan jones is a 1st grade school teacher. bob smith is a plumber.
bob smith
Hello, Susan. You are nice.
我想要大肆说出所有人的名字。所以文本看起来像这样:
SUSAN JONES
Good morning, children. How are you today?
Susan jones is a 1st grade school teacher. Bob smith is a plumber.
BOB SMITH
Hello, Susan. You are nice.
答案 0 :(得分:0)
如果你想要的是抓住前面有空白行和下一行文字的行,你可以使用它:
[\n][\n]([^\n]+)[\n][^\n|\s]
但是,如果第一个名称前面没有空行,则无效。 如果使用javascript,你可以简单地为你的replace方法提供一个函数,它以大写形式返回捕获的组($ 1)。
但这对我来说听起来不是一个很好的方法。如果人们的帖子中有换行符,那么迟早肯定会出错。
我也不会推荐其他建议,假设所有用户都有2个姓名而且没有人发帖2个字。
考虑这个例子:
susan jones
Good morning, children. How are you today?
Also BTW
Good evening too...
Susan jones is a 1st grade school teacher. bob smith is a plumber.
bob smith
Hello, Susan. You are nice.
这会使两个方法的“同时”一词成为大写。
你说你把所有这些都作为一个单独的字符串?没有其他方法可以获得附有更多信息的文本。
当然,如果用户的帖子中没有换行符,那么这个正则表达式应该适合你。但我仍然认为应该有可能找到更好的方法来做到这一点。