<?php
function convert($keyword) {
$wResult = preg_replace('/([[:lower:][:digit:]])?([[:upper:]]+)/u','$1 $2', $keyword); return $wResult;
}
"comeHEREtomorrow",
"KissYouTODAY",
"comeÜndeHere",
"NEVERSAYIT",
"2013willCome",
"Before2013ends",
"IKnowThat",
"#whatiknow"
);
"come HERE tomorrow",
"Kiss You TODAY",
"come Ünde Here",
"NEVERSAYIT",
"2013 will Come",
"Before 2013 ends",
"I Know That",
"# whatiknow"
);
foreach ($search_keyword as $key => $w) {
$wExpected = $need_keyword[$key];
$wResult = convert($w);
$check = strcmp($wExpected, $wResult); $checkWord = ( $check == 0 ? "SUCCESS" : "FAILURE" );
echo "try $key,\t keyword: \"$w\" expected: \"$wExpected\" result: \"$wResult\" check: $check ($checkWord),\n";
}
?>
PD9waHAgCiAgICBmdW5jdGlvbiBjb252ZXJ0KCRrZXl3b3JkKSB7CiAgICAgICAkd1Jlc3VsdCA9IHByZWdfcmVwbGFjZSgnLyhbWzpsb3dlcjpdWzpkaWdpdDpdXSk/KFtbOnVwcGVyOl1dKykvdScsJyQxICQyJywgJGtleXdvcmQpOwogICAgICAgcmV0dXJuICR3UmVzdWx0OwogICAgfQoKICRzZWFyY2hfa2V5d29yZCA9IGFycmF5KAogICAgICAgICAgICAiY29tZUhFUkV0b21vcnJvdyIsCiAgICAgICAgICAgICJLaXNzWW91VE9EQVkiLAogICAgICAgICAgICAiY29tZcOcbmRlSGVyZSIsCiAgICAgICAgICAgICJORVZFUlNBWUlUIiwKICAgICAgICAgICAgIjIwMTN3aWxsQ29tZSIsCiAgICAgICAgICAgICJCZWZvcmUyMDEzZW5kcyIsCiAgICAgICAgICAgICJJS25vd1RoYXQiLAogICAgICAgICAgICAiI3doYXRpa25vdyIKICAgICAgICApOwogICAgICAgICRuZWVkX2tleXdvcmQgPSBhcnJheSgKICAgICAgICAgICAgImNvbWUgSEVSRSB0b21vcnJvdyIsCiAgICAgICAgICAgICJLaXNzIFlvdSBUT0RBWSIsCiAgICAgICAgICAgICJjb21lIMOcbmRlIEhlcmUiLAogICAgICAgICAgICAiTkVWRVJTQVlJVCIsCiAgICAgICAgICAgICIyMDEzIHdpbGwgQ29tZSIsCiAgICAgICAgICAgICJCZWZvcmUgMjAxMyBlbmRzIiwKICAgICAgICAgICAgIkkgS25vdyBUaGF0IiwKICAgICAgICAgICAgIiMgd2hhdGlrbm93IgogICAgICAgICk7ICAgICAKCiAgICAgICAgZm9yZWFjaCAoJHNlYXJjaF9rZXl3b3JkIGFzICRrZXkgPT4gJHcpIHsKICAgICAgICAgICAgJHdFeHBlY3RlZCA9ICRuZWVkX2tleXdvcmRbJGtleV07CgogICAgICAgICAgICAkd1Jlc3VsdCA9IGNvbnZlcnQoJHcpOwoKICAgICAgICAgICAgJGNoZWNrID0gc3RyY21wKCR3RXhwZWN0ZWQsICR3UmVzdWx0KTsKICAgICAgICAgICAgJGNoZWNrV29yZCA9ICggJGNoZWNrID09IDAgPyAiU1VDQ0VTUyIgOiAiRkFJTFVSRSIgKTsKCiAgICAgICAgICAgIGVjaG8gInRyeSAka2V5LFx0IGtleXdvcmQ6IFwiJHdcIiBleHBlY3RlZDogXCIkd0V4cGVjdGVkXCIgcmVzdWx0OiBcIiR3UmVzdWx0XCIgY2hlY2s6ICRjaGVjayAoJGNoZWNrV29yZCksXG4iOwogICAgICAgIH0KPz4=
try 0, keyword: "comeHEREtomorrow" expected: "come HERE tomorrow" result: "come HEREtomorrow" check: -1 (FAILURE),
try 1, keyword: "KissYouTODAY" expected: "Kiss You TODAY" result: " Kiss You TODAY" check: 1 (FAILURE),
try 2, keyword: "comeÜndeHere" expected: "come Ünde Here" result: "comeÜnde Here" check: -1 (FAILURE),
try 3, keyword: "NEVERSAYIT" expected: "NEVERSAYIT" result: " NEVERSAYIT" check: 1 (FAILURE),
try 4, keyword: "2013willCome" expected: "2013 will Come" result: "2013will Come" check: -1 (FAILURE),
try 5, keyword: "Before2013ends" expected: "Before 2013 ends" result: " Before2013ends" check: 1 (FAILURE),
try 6, keyword: "IKnowThat" expected: "I Know That" result: " IKnow That" check: 1 (FAILURE),
try 7, keyword: "#whatiknow" expected: "# whatiknow" result: "#whatiknow" check: -1 (FAILURE),