KM> How do you remove trailing zeros from a vector?

I was reminded of the "delete trailing blanks" standard utility:

   dtb
#~ ([: +./\. ' '&~:)

and Roger's "remove trailing zeroes" mirrors that pretty closely:

   rtz=: #~ +./\.@(0&~:)


This might suggest a bit of refactoring:

   fill =: 3 : '{. 1 {. 0 {. y'
   delete_padding =:  ($:~ fill) : (+./\.@:~: # ])

   delete_padding 1 2 0 0
1 2
   '!' ,~ delete_padding 'foo bar   '
foo bar!
   '.' delete_padding 'foo bar...' 
foo bar

                                                Martin Neitzel
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to