Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

swiss::textfunc(3pm) [debian man page]

SWISS::TextFunc(3pm)					User Contributed Perl Documentation				      SWISS::TextFunc(3pm)

NAME
SWISS::TextFunc DESCRIPTION
This module is designed to be a repository of functions that are repeatedly used during parsing and formatting of SWISS-PROT/TREMBL lines. If more than two line types need to do aproximately the same thing then it is probably in here. All functions expect to be called as package->function(param list) listFromText Takes a piece of text, a seperator regex and a seperator that may appear at the end. Returns an array of items that were seperated in the text by that seperator. Takes care of null items (looses them for you). textFromList Takes an array of items, a separator, a terminating string, and a line width. Returns an array of strings, each ending with the separator or the terminator with a width less than or equal to the width specified. Seems to do the wrong thing for references - not sure why. Don't use it for that. wrapText Takes a string and a length. Returns an array of strings which are shorter or equal in length to length, spliting the string on white space. wrapOn ($firstLinePrefix, $linePrefix, $colums, $text[, @separators]) Wraps $text into lines with at most $colums colums. Prepends the prefixes to the lines. @separators is a list of expressions on which to wrap. The expression itself is part of the upper line. If no @separators are provided, the $text is wrapped at whitespace except in EC/TC numbers or at dashes that separate words. First tries to wrap on the first item of @separators, then the next etc. If no wrap on any element of @separators or whitespaces is possible, wraps into lines of exactly length $colums. A special case is that the first item of @separators may be a reference to an array. This is used internally for wrapping FT VARIANT- like lines. Example: wrapOn('DE ', 'DE ', 40, '14-3-3 PROTEIN BETA/ALPHA (PROTEIN KINASE C INHIBITOR PROTEIN-1)', 's+') returns ['14-3-3 PROTEIN BETA/ALPHA (PROTEIN ', 'KINASE C INHIBITOR PROTEIN-1)'] wrapOn('DE ', 'DE ', 40, '14-3-3 PROTEIN BETA/ALPHA (PROTEIN KINASE C INHIBITOR PROTEIN-1)', ' (?=()', 's+') returns ['14-3-3 PROTEIN BETA/ALPHA ', '(PROTEIN KINASE C INHIBITOR PROTEIN-1)'] cleanLine Remove the leading line Identifier and three blanks and trailing spaces from an SP line. joinWith ($text, $with, $noAddAfter, @list) Concatenates $text and @list into one string. Adds $with between the original elements, unless the postfix of the current string is $noAddAfter. This is used to avoid inserting blanks after hyphens during concatenation. So unpleasant strings like 'CALMODULIN- DEPENDENT' are avoided. Unfortunately a correct reassembly of strings like 'CARBON-DIOXIDE' is not done. insertLineGroup ($textRef, $text, $pattern) Inserts text block $text into the text referred to by $textRef. $text will replace the text block in $textRef matched by $pattern. uniqueList (@list) Returns a list in which all duplicates from @list have been removed. currentSpDate returns the current date in SWISS-PROT format toMixedCase($text, @regexps) Convert a text to mixed case, according to one or more regular expressions. In scalar context, returns the new text; in array context, also returns the regexp with which the change was performed, or undef on failure. See corresponding item in SWISS::GN for more details. perl v5.10.1 2006-08-31 SWISS::TextFunc(3pm)

Check Out this Related Man Page

SWISS::GNs(3pm) 					User Contributed Perl Documentation					   SWISS::GNs(3pm)

Name
       SWISS::GNs.pm

Description
       SWISS::GNs represents the GN lines within an SWISS-PROT + TrEMBL entry as specified in the user manual
	http://www.expasy.org/sprot/userman.html . The GNs object is a container object which holds a list of SWISS::GeneGroup objects.

Inherits from
       SWISS::ListBase.pm

Attributes
       "list"
	     Each list element is a SWISS::GeneGroup object.

       "and" (deprecated, for old format only)
	     Delimiter used between genes. Defaults to " AND ".

       "or" (deprecated, for old format only)
	     Delimiter used between gene names. Defaults to " OR ".

Methods
   Standard methods
       new
       fromText
       toText

   Reading/Writing methods
       text [($newText)]
	   Sets the text of the GN line to the parameter if it is present, and returns the (unwrapped) text of the line.  Also sets 'and' and 'or'
	   delimiters to the first occurrences of the words "OR" and "AND" in the line, conserving the case.

       lowercase (deprecated, for old format only)
	   Sets the GNs::and and GNs::or delimiters to their lower case values.

       uppercase (deprecated, for old format only)
	   Sets the GNs::and and GNs::or delimiters to their upper case values.

       getFirst()
	   Returns first gene name in gene line

       getTags($target)
	   Returns evidence tags associated with $target

	   $target is a string

       isPresent($target)
	   Returns 1 if $target is present in the GN line

	   $target is a string

       needsReCasing($target)
	   If $target is present in the GN line, but wrongly cased, method returns the matching name in its current case

	   $target is a string

       replace($newName, $target, $evidenceTag)
	   Replaces the first GN object in the GN line whose text attribute is $target with a new GN object whose text attribute is set to
	   $newName and whose evidenceTags attribute is is set using values set by splitting $evidenceTag on /, / (as name is not being changed,
	   programs should keep old tag and add new tag).  Does nothing if $target is not found.

       delete($target)
	   Removes synonym/single-member gene group matching $target. Note that if a "Name" is deleted, the first "Synonym" will be promoted to
	   "Name"

       addAsNewSynonym($newName, $target, $evidenceTag, $location)
	   Adds a new GN object (with text attribute set to new $newName, and evidenceTags attribute set to ($evidenceTag)), as a synonym to the
	   first gene group in which $target is a gene name.  Does nothing if $target is not found.  Will not add a duplicate gene name.
	   $location determines where in gene group new object is added: if $location == 1, 2, 3, ..., new object added in the 1st, 2nd, 3rd, ...
	   position; if $location == 0, new object added before $target; if $location == -1, new object added after $target (default); if
	   $location == -2, new object added at end of gene group.  Note that if the new synonym is inserted in the first postion, it will become
	   the "Name" and the previous "Name" will be downgraded to first "Synonym"

       addAsNewGeneGroup($newName, $target, $evidenceTag, $location)
	   Adds a new GeneGroup object, comprising 1 GN object (with text attribute set to new $newName, and evidenceTags attribute set to
	   ($evidenceTag)). Will not add a duplicate gene name.  $location and $target determine where in GNs line new group is added: if
	   $location == 1, 2, 3, ..., new object added in the 1st, 2nd, 3rd, ... position; if $location == 0, new object added before $target; if
	   $location == -1, new object added after $target (default); if $location == -2, new object added at end of GNs line.	Does nothing if
	   $target is not found, and $location == 0 or -1; otherwise $target does not need to be set.

       replaceGeneGroup($newGeneGroup, $target)
	   Replaces the first gene group containing $target with $newGeneGroup.  Creating the $newGeneGroup correctly is the user's responsibility

       getGeneGroup($target)
	   Returns the first gene group that contains $target

       setToOr()
	   Retruns a new GNs object, but with all GNs objects in a single gene group.  Needed when adding 'C' to 'A and B', when the relationship
	   of 'C' to 'A' and 'B' is unknown: the universal use of ' or ' is the default delimeter for TrEMBL entries

TRANSITION
The format of the GN line will change in 2004 from: GN (CYSA1 OR CYSA OR RV3117 OR MT3199 OR MTCY164.27) AND (CYSA2 OR GN RV0815C OR MT0837 OR MTV043.07C). to: GN Name=CysA1; Synonyms=CysA; OrderedLocusNames=Rv3117, MT3199; GN ORFNames=MtCY164.27; GN and GN Name=CysA2; OrderedLocusNames=Rv0815c, MT0837; ORFNames=MTV043.07c; This module supports both formats. To convert an entry from the old to the new format, do: $entry->GNs->is_old_format(0); perl v5.10.1 2006-01-26 SWISS::GNs(3pm)
Man Page