func MatchCount(namea, nameb string) (n int, err error) {
	var a, b []string
	if a, err = Labels(namea); err != nil {
		return
	}

	if b, err = Labels(nameb); err != nil {
		return
	}

	for i, j := len(a)-1, len(b)-1; i >= 0 && j >= 0 && strings.ToLower(a[i]) == strings.ToLower(b[j]); {
		n++
		i--
		j--
	}
	return
}
// MatchCount returns the number of labels that namea and nameb have in common
// or an Error if any. The counting starts at the root label, so any two
// valid rooted domain names have match count at least one == the root domain.
MatchCount returns the number of labels that namea and nameb have in common
or an Error if any. The counting starts at the root label, so any two
valid rooted domain names have match count at least one == the root domain.
// MatchCount returns the number of labels that namea and nameb have in common // or an Error if any . The counting starts at the root label so any two // valid rooted domain names have match count at least one == the root domain .
func MatchCount(namea, nameb string) (n int, err error) {
	var a, b []string
	if a, err = Labels(namea); err != nil {
		return
	}
	if b, err = Labels(nameb); err != nil {
		return
	}
	for i, j := len(a)-1, len(b)-1; i >= 0 && j >= 0 && strings.ToLower(a[i]) == strings.ToLower(b[j]); {
		n++
		i--
		j--
	}
	return
}
func MatchCount ( namea , nameb string ) ( n int , err error ) { var a , b [ ] string if a , err = Labels ( namea ) ; err != nil { return } if b , err = Labels ( nameb ) ; err != nil { return } for i , j := len ( a ) - 1 , len ( b ) - 1 ; i >= 0 && j >= 0 && strings . ToLower ( a [ i ] ) == strings . ToLower ( b [ j ] ) ; { n ++ i -- j -- } return }
MatchCount returns the number of labels that namea and nameb have in common
or an Error if any.
MatchCount returns the number of labels that namea and nameb have in common or an Error if any .