<?php
function isAnagram($str1, $str2)
{
$strs1 = _sort($str1);
$strs2 = _sort($str2);
if($strs1 !== $strs2) {
return false;
}
return true;
}
function _sort($str)
{
$str = str_replace(" ", "", trim($str));
$strs = str_split($str);
$strs = array_filter($strs);
sort($strs);
return $strs;
}
$str1 = "anagrams";
$str2 = "ars magna";
var_dump(isAnagram($str1, $str2));
Anagram = function(str1, str2) {
this.str1 = str1;
this.str2 = str2;
}
Anagram.prototype.isAnagram = function() {
strs1 = this._sort(this.str1);
strs2 = this._sort(this.str2);
if(strs1.toString() != strs2.toString()) {
return false;
}
return true;
}
Anagram.prototype._sort = function(str) {
return str.trim().replace(" ", "").split("").sort();
}
var str1 = "anagrams";
var str2 = "ars magna";
var anagram = new Anagram(str1, str2);
console.log(anagram.isAnagram());
def is_anagram(str1, str2)
strs1 = _sort(str1)
strs2 = _sort(str2)
if strs1 != strs2
return false
end
return true
end
def _sort(str)
return str.strip.delete(" ").split("").sort
end
str1 = "anagrams"
str2 = "ars magna"
puts is_anagram(str1, str2)
def is_anagram(str1, str2):
strs1 = _sort(str1)
strs2 = _sort(str2)
if strs1 != strs2:
return False
return True
def _sort(str):
str = str.strip().replace(' ', '')
strs = list(str)
strs.sort()
return strs
if __name__ == "__main__":
str1 = "anagrams"
str2 = "ars magna"
print is_anagram(str1, str2)
Go
package main
import "fmt"
import "strings"
import "sort"
import "reflect"
func _Sort(str string) []string {
>-str = strings.Trim(str, " ")
>-str = strings.Replace(str, " ", "", -1)
>-strs := strings.Split(str, "")
>-sort.Strings(strs)
>-return strs
}
func IsAnagram(str1 string, str2 string) bool {
>-strs1 := _Sort(str1)
>-strs2 := _Sort(str2)
>-if reflect.DeepEqual(strs1, strs2) == false {
>->-return false
>-}
>-return true
}
func main() {
>-var str1 string = "anagrams"
>-var str2 string = "ars magna"
>-
>-fmt.Println(IsAnagram(str1, str2))
}
Elixir
#
# 2つの文字がアナグラムかどうか判定する
#
defmodule IsAnagram do
def main(str1, str2) do
strs1 = _sort(str1)
strs2 = _sort(str2)
if strs1 != strs2 do
false
else
true
end
end
defp _sort(str) do
str = String.strip(str)
str = String.replace(str, " ", "")
strs = String.split(str, "")
strs = Enum.sort(strs)
strs
end
end
str1 = "aanagrams"
str2 = "ars magna"
IO.puts IsAnagram.main(str1, str2)