序
本文主要记录一下leetcode之键盘行
题目
给定一个单词列表,只返回可以使用在键盘同一行的字母打印出来的单词。键盘如下图所示。
![](https://assets.leetcode-cn.com/aliyun-lc-upload/uploads/2018/10/12/keyboard.png)
示例:
输入: ["Hello", "Alaska", "Dad", "Peace"]
输出: ["Alaska", "Dad"]
注意:
你可以重复使用键盘上同一字符。
你可以假设输入的字符串将只包含字母。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/keyboard-row
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
题解
class Solution {
public String[] findWords(String[] words) {
List<String> result = new ArrayList<>();
for (String word : words) {
String str = word.toLowerCase();
if (str.matches("[qwertyuiop]+") || str.matches("[asdfghjkl]+") || str.matches("[zxcvbnm]+")) {
result.add(word);
}
}
return result.toArray(new String[result.size()]);
}
}
小结
这里利用java的String的matches方法来进行正则匹配,将满足条件的添加到结果集中。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。