Mathematica 11.x, 74 바이트
{}!=StringCases[#,StartOfString~~x__/;(x!=#&&StringReplace[#,x->""]=="")]&
어디서나 #
입력 문자열을 나타내고
StringCases[#,<pattern>]
패턴과 일치하는 입력 문자열의 하위 문자열을 찾습니다.
StartOfString~~x__/;(x!=#&&StringReplace[#,x->""]=="")
이 패턴은 일치가 필요 x
하며 문자열의 시작 부분에서 시작해야하며 (1) 일치가 전체 입력 문자열이 아니며 (2) 입력 문자열에서 일치하는 항목을 빈 문자열로 바꾸는 조건을 충족해야합니다. 빈 문자열을 얻습니다. 마지막으로 일치하는 목록을 빈 목록과 비교하면
{}!=
이다 True
일치 항목 목록이 비어 있지 않은 경우와 False
일치 항목 목록이 비어있는 경우.
테스트 사례 :
{}!=StringCases[#,StartOfString~~x__/;(x!=#&&StringReplace[#,x->""]=="")]&["aa"]
(* True *)
{}!=StringCases[#,StartOfString~~x__/;(x!=#&&StringReplace[#,x->""]=="")]&["aaa"]
(* True *)
{}!=StringCases[#,StartOfString~~x__/;(x!=#&&StringReplace[#,x->""]=="")]&["abcabc"]
(* True *)
과
{}!=StringCases[#,StartOfString~~x__/;(x!=#&&StringReplace[#,x->""]=="")]&["aba"]
(* False *)
{}!=StringCases[#,StartOfString~~x__/;(x!=#&&StringReplace[#,x->""]=="")]&["ababa"]
(* False *)
{}!=StringCases[#,StartOfString~~x__/;(x!=#&&StringReplace[#,x->""]=="")]&["weqweqweqweqweqw"]
(* False *)