The master copies of EMBOSS documentation are available at on the EMBOSS Wiki.

Please help by correcting and extending the Wiki pages.


Replace or delete sequence sections


biosed is a simple sequence editing utility that searches for a target subsequence in one or more input sequences and replaces it with an insert subsequence, or optionally, just deletes the target subsequence where found. If the target subsequence occurs more than once, then each instance of the target is replaced or deleted.

The -position option allows a sequence position to be specified as an additional constraint for the match: a replacement / deletion only occurs if the start of a match is at the specified -position position.


The target subsequence is just a short, literal sequence of characters. biosed cannot interpret cannot any sort of an ambiguity pattern such as a regular expression. A simple string match is done between the target and input sequences. If there is an exact matches then the replacement or deletion is done. The matching is case insensitive, independent of the case of both the input sequences and target.


Here is a sample session with biosed

Replace all 'T's with 'U's to create an RNA sequence

% biosed tembl:x65923 x65923.rna -target T -replace U 
Replace or delete sequence sections

Go to the input files for this example
Go to the output files for this example

Example 2

Replace all 'PPP' protein motifs with 'XXPPPXX'

% biosed tsw:amir_pseae amir_pseae.pep -target PPP -replace XXPPPXX 
Replace or delete sequence sections

Go to the input files for this example
Go to the output files for this example

Command line arguments

   Standard (Mandatory) qualifiers (* if not always prompted):
  [-sequence]          seqall     (Gapped) sequence(s) filename and optional
                                  format, or reference (input USA)
   -target             string     [N] Sequence section to match (Any string is
*  -replace            string     [A] Replacement sequence section (Any string
                                  is accepted)
  [-outseq]            seqout     [.] Sequence filename and
                                  optional format (output USA)

   Additional (Optional) qualifiers:
   -position           integer    [0] Sequence position to match (Integer 0 or

   Advanced (Unprompted) qualifiers:
   -delete             toggle     [N] Delete the target sequence sections

   Associated qualifiers:

   "-sequence" associated qualifiers
   -sbegin1            integer    Start of each sequence to be used
   -send1              integer    End of each sequence to be used
   -sreverse1          boolean    Reverse (if DNA)
   -sask1              boolean    Ask for begin/end/reverse
   -snucleotide1       boolean    Sequence is nucleotide
   -sprotein1          boolean    Sequence is protein
   -slower1            boolean    Make lower case
   -supper1            boolean    Make upper case
   -sformat1           string     Input sequence format
   -sdbname1           string     Database name
   -sid1               string     Entryname
   -ufo1               string     UFO features
   -fformat1           string     Features format
   -fopenfile1         string     Features file name

   "-outseq" associated qualifiers
   -osformat2          string     Output seq format
   -osextension2       string     File name extension
   -osname2            string     Base file name
   -osdirectory2       string     Output directory
   -osdbname2          string     Database name to add
   -ossingle2          boolean    Separate file for each entry
   -oufo2              string     UFO features
   -offormat2          string     Features format
   -ofname2            string     Features file name
   -ofdirectory2       string     Output directory

   General qualifiers:
   -auto               boolean    Turn off prompts
   -stdout             boolean    Write first file to standard output
   -filter             boolean    Read first file from standard input, write
                                  first file to standard output
   -options            boolean    Prompt for standard and additional values
   -debug              boolean    Write debug output to program.dbg
   -verbose            boolean    Report some/full command line options
   -help               boolean    Report command line options. More
                                  information on associated and general
                                  qualifiers can be found with -help -verbose
   -warning            boolean    Report warnings
   -error              boolean    Report errors
   -fatal              boolean    Report fatal errors
   -die                boolean    Report dying program messages

Standard (Mandatory) qualifiers Allowed values Default
(Parameter 1)
(Gapped) sequence(s) filename and optional format, or reference (input USA) Readable sequence(s) Required
-target Sequence section to match Any string is accepted N
-replace Replacement sequence section Any string is accepted A
(Parameter 2)
Sequence filename and optional format (output USA) Writeable sequence <*>.format
Additional (Optional) qualifiers Allowed values Default
-position Sequence position to match Integer 0 or more 0
Advanced (Unprompted) qualifiers Allowed values Default
-delete Delete the target sequence sections Toggle value Yes/No No

Input file format

It reads the USA of one or more nucleic acid or protein sequences.

Input files for usage example

'tembl:x65923' is a sequence entry in the example nucleic acid database 'tembl'

Database entry: tembl:x65923

ID   X65923; SV 1; linear; mRNA; STD; HUM; 518 BP.
AC   X65923;
DT   13-MAY-1992 (Rel. 31, Created)
DT   18-APR-2005 (Rel. 83, Last updated, Version 11)
DE   H.sapiens fau mRNA
KW   fau gene.
OS   Homo sapiens (human)
OC   Eukaryota; Metazoa; Chordata; Craniata; Vertebrata; Euteleostomi; Mammalia;
OC   Eutheria; Euarchontoglires; Primates; Haplorrhini; Catarrhini; Hominidae;
OC   Homo.
RN   [1]
RP   1-518
RA   Michiels L.M.R.;
RT   ;
RL   Submitted (29-APR-1992) to the EMBL/GenBank/DDBJ databases.
RL   L.M.R. Michiels, University of Antwerp, Dept of Biochemistry,
RL   Universiteisplein 1, 2610 Wilrijk, BELGIUM
RN   [2]
RP   1-518
RX   PUBMED; 8395683.
RA   Michiels L., Van der Rauwelaert E., Van Hasselt F., Kas K., Merregaert J.;
RT   "fau cDNA encodes a ubiquitin-like-S30 fusion protein and is expressed as
RT   an antisense sequence in the Finkel-Biskis-Reilly murine sarcoma virus";
RL   Oncogene 8(9):2537-2546(1993).
DR   H-InvDB; HIT000322806.
FH   Key             Location/Qualifiers
FT   source          1..518
FT                   /organism="Homo sapiens"
FT                   /chromosome="11q"
FT                   /map="13"
FT                   /mol_type="mRNA"
FT                   /clone_lib="cDNA"
FT                   /clone="pUIA 631"
FT                   /tissue_type="placenta"
FT                   /db_xref="taxon:9606"
FT   misc_feature    57..278
FT                   /note="ubiquitin like part"
FT   CDS             57..458
FT                   /gene="fau"
FT                   /db_xref="GDB:135476"
FT                   /db_xref="GOA:P62861"
FT                   /db_xref="HGNC:3597"
FT                   /db_xref="HSSP:1GJZ"
FT                   /db_xref="InterPro:IPR006846"
FT                   /db_xref="UniProtKB/Swiss-Prot:P35544"
FT                   /protein_id="CAA46716.1"
FT   misc_feature    98..102
FT                   /note="nucleolar localization signal"
FT   misc_feature    279..458
FT                   /note="S30 part"
FT   polyA_signal    484..489
FT   polyA_site      509
SQ   Sequence 518 BP; 125 A; 139 C; 148 G; 106 T; 0 other;
     ttcctctttc tcgactccat cttcgcggta gctgggaccg ccgttcagtc gccaatatgc        60
     agctctttgt ccgcgcccag gagctacaca ccttcgaggt gaccggccag gaaacggtcg       120
     cccagatcaa ggctcatgta gcctcactgg agggcattgc cccggaagat caagtcgtgc       180
     tcctggcagg cgcgcccctg gaggatgagg ccactctggg ccagtgcggg gtggaggccc       240
     tgactaccct ggaagtagca ggccgcatgc ttggaggtaa agttcatggt tccctggccc       300
     gtgctggaaa agtgagaggt cagactccta aggtggccaa acaggagaag aagaagaaga       360
     agacaggtcg ggctaagcgg cggatgcagt acaaccggcg ctttgtcaac gttgtgccca       420
     cctttggcaa gaagaagggc cccaatgcca actcttaagt cttttgtaat tctggctttc       480
     tctaataaaa aagccactta gttcagtcaa aaaaaaaa                               518

Input files for usage example 2

'tsw:amir_pseae' is a sequence entry in the example protein database 'tsw'

Database entry: tsw:amir_pseae

ID   AMIR_PSEAE              Reviewed;         196 AA.
AC   P10932;
DT   01-JUL-1989, integrated into UniProtKB/Swiss-Prot.
DT   08-DEC-2000, sequence version 2.
DT   16-JUN-2009, entry version 72.
DE   RecName: Full=Aliphatic amidase regulator;
GN   Name=amiR; OrderedLocusNames=PA3363;
OS   Pseudomonas aeruginosa.
OC   Bacteria; Proteobacteria; Gammaproteobacteria; Pseudomonadales;
OC   Pseudomonadaceae; Pseudomonas.
OX   NCBI_TaxID=287;
RN   [1]
RX   MEDLINE=89211409; PubMed=2495988; DOI=10.1016/0014-5793(89)80249-2;
RA   Lowe N., Rice P.M., Drew R.E.;
RT   "Nucleotide sequence of the aliphatic amidase regulator gene (amiR) of
RT   Pseudomonas aeruginosa.";
RL   FEBS Lett. 246:39-43(1989).
RN   [2]
RC   STRAIN=ATCC 15692 / PAO1 / 1C / PRS 101 / LMG 12228;
RX   MEDLINE=20437337; PubMed=10984043; DOI=10.1038/35023079;
RA   Stover C.K., Pham X.-Q.T., Erwin A.L., Mizoguchi S.D., Warrener P.,
RA   Hickey M.J., Brinkman F.S.L., Hufnagle W.O., Kowalik D.J., Lagrou M.,
RA   Garber R.L., Goltry L., Tolentino E., Westbrock-Wadman S., Yuan Y.,
RA   Brody L.L., Coulter S.N., Folger K.R., Kas A., Larbig K., Lim R.M.,
RA   Smith K.A., Spencer D.H., Wong G.K.-S., Wu Z., Paulsen I.T.,
RA   Reizer J., Saier M.H. Jr., Hancock R.E.W., Lory S., Olson M.V.;
RT   "Complete genome sequence of Pseudomonas aeruginosa PAO1, an
RT   opportunistic pathogen.";
RL   Nature 406:959-964(2000).
RN   [3]
RX   MEDLINE=95286483; PubMed=7539417;
RA   Wilson S.A., Drew R.E.;
RT   "Transcriptional analysis of the amidase operon from Pseudomonas
RT   aeruginosa.";
RL   J. Bacteriol. 177:3052-3057(1995).
RN   [4]
RX   MEDLINE=99437995; PubMed=10508151; DOI=10.1093/emboj/18.19.5175;
RA   O'Hara B.P., Norman R.A., Wan P.T., Roe S.M., Barrett T.E., Drew R.E.,
RA   Pearl L.H.;
RT   "Crystal structure and induction mechanism of AmiC-AmiR: a ligand-
RT   regulated transcription antitermination complex.";
RL   EMBO J. 18:5175-5186(1999).
CC   -!- FUNCTION: Positive controlling element of amiE, the gene for
CC       aliphatic amidase. Acts as a transcriptional antitermination

  [Part of this file has been deleted for brevity]

DR   RefSeq; NP_252053.1; -.
DR   PDB; 1QO0; X-ray; 2.25 A; D/E=1-196.
DR   PDBsum; 1QO0; -.
DR   GeneID; 880573; -.
DR   GenomeReviews; AE004091_GR; PA3363.
DR   KEGG; pae:PA3363; -.
DR   PseudoCAP; PA3363; -.
DR   HOGENOM; P10932; -.
DR   OMA; P10932; QLQRIGC.
DR   BioCyc; PAER208964:PA3363-MON; -.
DR   GO; GO:0006350; P:transcription; IEA:UniProtKB-KW.
DR   GO; GO:0031564; P:transcription antitermination; IEA:UniProtKB-KW.
DR   InterPro; IPR005561; AmiR_NasR_reg.
DR   InterPro; IPR008327; Sig_transdc_resp-reg_antiterm.
DR   InterPro; IPR011991; Wing_hlx_DNA_bd.
DR   Gene3D; G3DSA:; Wing_hlx_DNA_bd; 1.
DR   Pfam; PF03861; ANTAR; 1.
DR   PIRSF; PIRSF036382; RR_antiterm; 1.
DR   PROSITE; PS50921; ANTAR; 1.
PE   1: Evidence at protein level;
KW   3D-structure; Complete proteome; Transcription;
KW   Transcription antitermination; Transcription regulation.
FT   CHAIN         1    196       Aliphatic amidase regulator.
FT                                /FTId=PRO_0000064582.
FT   DOMAIN      129    190       ANTAR.
FT   CONFLICT     48     48       S -> A (in Ref. 1; CAA32023).
FT   CONFLICT     64     64       R -> G (in Ref. 1; CAA32023).
FT   CONFLICT    141    141       E -> D (in Ref. 1; CAA32023).
FT   CONFLICT    154    154       A -> V (in Ref. 1; CAA32023).
FT   CONFLICT    170    170       Y -> H (in Ref. 1; CAA32023).
FT   HELIX         3      8
FT   HELIX         9     12
FT   STRAND       14     19
FT   HELIX        23     35
FT   STRAND       38     42
FT   STRAND       54     59
FT   HELIX        65     75
FT   STRAND       81     86
FT   HELIX        91    100
FT   STRAND      103    109
FT   HELIX       112    114
FT   HELIX       115    160
FT   HELIX       164    175
FT   TURN        176    179
FT   HELIX       182    189
SQ   SEQUENCE   196 AA;  21903 MW;  306A4F30E8E4C6C0 CRC64;

Output file format

The edited sequence is output.

The sequence will be in uppercase.

Output files for usage example

File: x65923.rna

>X65923 X65923.1 H.sapiens fau mRNA

Output files for usage example 2

File: amir_pseae.pep

>AMIR_PSEAE P10932 Aliphatic amidase regulator

Data files



biosed was inspired by the useful UNIX utility sed which searches for a pattern in text and can replace or delete the found pattern.




No check for correct type (protein, nucleic, gapped etc) is made on the replacement sequence so you must ensure it is of the type required. Any text can be used, including characters only used in proteins (e.g. D, E, F, etc.), characters rarely used in proteins (e.g. U, J, O, etc), digits and punctuation characters.

Diagnostic Error Messages


Exit status

It always exits with status 0.

Known bugs


See also

Program name Description
aligncopy Reads and writes alignments
aligncopypair Reads and writes pairs from alignments
codcopy Copy and reformat a codon usage table
cutseq Removes a section from a sequence
degapseq Removes non-alphabetic (e.g. gap) characters from sequences
descseq Alter the name or description of a sequence
entret Retrieves sequence entries from flatfile databases and files
extractalign Extract regions from a sequence alignment
extractfeat Extract features from sequence(s)
extractseq Extract regions from a sequence
featcopy Reads and writes a feature table
featreport Reads and writes a feature table
listor Write a list file of the logical OR of two sets of sequences
makenucseq Create random nucleotide sequences
makeprotseq Create random protein sequences
maskambignuc Masks all ambiguity characters in nucleotide sequences with N
maskambigprot Masks all ambiguity characters in protein sequences with X
maskfeat Write a sequence with masked features
maskseq Write a sequence with masked regions
newseq Create a sequence file from a typed-in sequence
nohtml Remove mark-up (e.g. HTML tags) from an ASCII text file
noreturn Remove carriage return from ASCII files
nospace Remove all whitespace from an ASCII text file
notab Replace tabs with spaces in an ASCII text file
notseq Write to file a subset of an input stream of sequences
nthseq Write to file a single sequence from an input stream of sequences
nthseqset Reads and writes (returns) one set of sequences from many
pasteseq Insert one sequence into another
revseq Reverse and complement a nucleotide sequence
seqret Reads and writes (returns) sequences
seqretsetall Reads and writes (returns) many sets of sequences
seqretsplit Reads sequences and writes them to individual files
sizeseq Sort sequences by size
skipredundant Remove redundant sequences from an input set
skipseq Reads and writes (returns) sequences, skipping first few
splitsource Split sequence(s) into original source sequences
splitter Split sequence(s) into smaller sequences
trimest Remove poly-A tails from nucleotide sequences
trimseq Remove unwanted characters from start and end of sequence(s)
trimspace Remove extra whitespace from an ASCII text file
union Concatenate multiple sequences into a single sequence
vectorstrip Removes vectors from the ends of nucleotide sequence(s)
yank Add a sequence reference (a full USA) to a list file


Alan Bleasby (ajb ©
European Bioinformatics Institute, Wellcome Trust Genome Campus, Hinxton, Cambridge CB10 1SD, UK


Written (Jan 2002) - Alan Bleasby

Target users

This program is intended to be used by everyone and everything, from naive users to embedded scripts.