Skip to content
This repository was archived by the owner on Mar 11, 2018. It is now read-only.

Conversation

@zoltanmaric
Copy link

Fixes #24. Apart from including the missing characters (z, Z, and 9) in their respective classes and filters, this change should yield equal results as the upstream version.

I didn't want to change the functionality drastically not to break existing code, but this trait is actually reinventing the character classes already available on Scala's Char class. These include isLower, isUpper, toLower, isLetter,isDigit`, etc.

I would suggest deprecating this trait and use the following existing alternatives (compatible with the StringTransform type):

  • _.filter(_.isLetter) instead of filterAlpha
  • _.filterNot(_.isLetter) instead of filterNotAlpha
  • _.filter(_.isDigit) instead of filterNumeric
  • _.filterNot(_.isDigit) instead of filterNotNumeric
  • _.filter(_.isLetterOrDigit) instead of filterAlphaNumeric
  • _.filterNot(_.isLetterOrDigit) instead of filterNotAlphaNumeric
  • _.filter(_.isLower) instead of filterLowerCase
  • _.filterNot(_.isLower) instead of filterNotLowerCase
  • _.filter(_.isUpper) instead of filterUpperCase
  • _.filterNot(_.isUpper) instead of filterNotUpperCase
  • _.map(_.toLower) instead of ignoreAlphaCase

They are not equivalent, but they are part of the standard library, and I would argue that they are much more accurate than the existing filters.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant