summaryrefslogtreecommitdiff
path: root/core/source/core/scala/com/rockymadden/stringmetric/filter/AsciiLetterNumberOnlyFilter.scala
blob: 7cf97ba724f39511484a8c2725e77ae3b26cf1d1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package com.rockymadden.stringmetric.filter

import com.rockymadden.stringmetric.StringFilter

/** Ensures only ASCII letters and numbers matter. */
trait AsciiLetterNumberOnlyFilter extends StringFilter {
	abstract override def filter(charArray: Array[Char]): Array[Char] =
		super.filter(
			charArray.filter(c =>
				((c >= 48 && c <= 57 ) || (c >= 65 && c <= 90 ) || (c >= 97 && c <= 122))
			)
		)

	abstract override def filter(string: String): String = filter(string.toCharArray).mkString
}