我正在尝试修改此代码,以便如果此函数的输入包含字母'Z',它将返回返回一个空向量。如果它在字符串的开头,我可以为字母“Q”或“Z”执行此操作,但不幸的是,如果这两个字母中的任何一个都在最后,它将无效。
function d = change(a)
new_claim = regexprep(a, 'A', '2');
new_claim1 = regexprep(new_claim, 'B', '2');
new_claim2 = regexprep(new_claim1, 'C', '2');
new_claim3 = regexprep(new_claim2, 'D', '3');
new_claim4 = regexprep(new_claim3, 'E', '3');
new_claim5 = regexprep(new_claim4, 'F', '3');
new_claim6 = regexprep(new_claim5, 'G', '4');
new_claim7 = regexprep(new_claim6, 'H', '4');
new_claim8 = regexprep(new_claim7, 'I', '4');
new_claim9 = regexprep(new_claim8, 'J', '5');
new_claim10 = regexprep(new_claim9, 'K', '5');
new_claim11 = regexprep(new_claim10, 'L', '5');
new_claim12 = regexprep(new_claim11, 'M', '6');
new_claim13 = regexprep(new_claim12, 'N', '6');
new_claim14 = regexprep(new_claim13, 'O', '6');
new_claim15 = regexprep(new_claim14, 'P', '7');
new_claim16 = regexprep(new_claim15, 'R', '7');
new_claim17 = regexprep(new_claim16, 'S', '7');
new_claim18 = regexprep(new_claim17, 'T', '8');
new_claim19 = regexprep(new_claim18, 'U', '8');
new_claim20 = regexprep(new_claim19, 'V', '8');
new_claim21 = regexprep(new_claim20, 'W', '9');
new_claim22 = regexprep(new_claim21, 'X', '9');
new_claim23 = regexprep(new_claim22, 'Y', '9');
new_claim24 = regexprep(new_claim23, '-', ' ');
new_claim25 = regexprep(new_claim24, '(', '');
new_claim26 = regexprep(new_claim25, ')','');
d = new_claim26;
if strfind(d,'Q') == true
d = [];
elseif strfind(d,'Z') == true
d = [];
else
return;
end
答案 0 :(得分:2)
如果您希望检查字符串是否包含字母Z
或z
,可以将其放在代码的开头:
if ~isempty(regexp(a, '[Zz]'))
d = [];
return;
end
如果您还想查看Q
或q
,可以执行以下操作:
if ~isempty(regexp(a, '[ZzQq]'))
d = [];
return;
end
以上使用正则表达式查看字符串中是否包含Z
或z
(或Q
或q
的字符,具体取决于具体内容你要)。 regexp
返回找到这些字符的索引。如果找到Z
或z
(或Q
或q
字符(取决于您想要的字符),则索引将为非空,因此{ {1}}检查。如果找不到~isempty
或Z
(或z
或Q
)个字符,则此字段为空,因此会跳过此语句。重要的是,如果我们找到q
,Z
(或z
,Q
)字符,我们会立即将q
设为空并且< strong> return ,以便其余的逻辑不会运行。
然后您可以继续使用其余的代码。
答案 1 :(得分:1)
您可以检查字符是否包含在字符串中:override func viewDidLoad() {
super.viewDidLoad()
if let scene = GameScene.unarchiveFromFile("GameScene") as? GameScene {
// Configure the view.
let skView = self.view as! SKView
skView.showsFPS = true
skView.showsNodeCount = true
/* Sprite Kit applies additional optimizations to improve rendering performance */
skView.ignoresSiblingOrder = true
/* Set the scale mode to scale to fit the window */
scene.scaleMode = .AspectFill
skView.presentScene(scene)
}
}